Jump to page: 1 28  
Page
Thread overview
Request: make coff2omf free
Feb 24, 2007
torhu
Feb 24, 2007
Frits van Bommel
Feb 24, 2007
Frits van Bommel
Feb 24, 2007
torhu
Feb 25, 2007
Walter Bright
Feb 24, 2007
Bill Baxter
Feb 24, 2007
John Reimer
Feb 25, 2007
Walter Bright
Feb 25, 2007
John Reimer
Feb 25, 2007
Walter Bright
Feb 25, 2007
Walter Bright
Feb 25, 2007
John Reimer
Feb 25, 2007
Walter Bright
Feb 25, 2007
John Reimer
Feb 25, 2007
Walter Bright
Feb 25, 2007
John Reimer
Feb 25, 2007
Walter Bright
Feb 25, 2007
Lars Ivar Igesund
Feb 25, 2007
John Reimer
Feb 25, 2007
John Reimer
Feb 25, 2007
Frits van Bommel
Feb 25, 2007
John Reimer
Feb 25, 2007
Frits van Bommel
Feb 25, 2007
John Reimer
Feb 25, 2007
Gregor Richards
Feb 25, 2007
Frits van Bommel
Feb 25, 2007
John Reimer
Feb 25, 2007
Frits van Bommel
Feb 25, 2007
Daniel Keep
Feb 26, 2007
Bill Baxter
Feb 26, 2007
Daniel Keep
Feb 26, 2007
John Reimer
Feb 25, 2007
John Reimer
Feb 25, 2007
janderson
Feb 25, 2007
Walter Bright
Feb 25, 2007
janderson
Feb 25, 2007
Sean Kelly
Feb 25, 2007
Tyler Knott
Feb 25, 2007
John Reimer
Feb 25, 2007
Frits van Bommel
Feb 25, 2007
Sean Kelly
Feb 25, 2007
Bill Baxter
Feb 25, 2007
John Reimer
Feb 25, 2007
Walter Bright
Feb 25, 2007
John Reimer
Feb 25, 2007
Walter Bright
Feb 25, 2007
Jascha Wetzel
Feb 25, 2007
John Reimer
Feb 25, 2007
Bill Baxter
Feb 25, 2007
John Reimer
Feb 25, 2007
Frits van Bommel
Feb 25, 2007
Sean Kelly
Feb 25, 2007
Frits van Bommel
Feb 26, 2007
Sean Kelly
Feb 25, 2007
Bill Baxter
Feb 26, 2007
Sean Kelly
Feb 25, 2007
torhu
Feb 25, 2007
Bill Baxter
Feb 25, 2007
Frits van Bommel
Feb 25, 2007
John Reimer
Feb 25, 2007
Bill Baxter
Feb 25, 2007
John Reimer
Feb 25, 2007
Bill Baxter
Feb 25, 2007
torhu
Feb 25, 2007
Bill Baxter
February 24, 2007
I'm working on translating headers for a C lib called allegroGL to D. The C lib isn't set up for building DLLs on windows, only libs for static linking.  So I'm stuck with mingw or msvc lib files that I can't link with my D objects.

Getting this library to compile to a DLL requires adapting the source, creating .def files, etc.  I'm not too keen on that.

So Mr. Bright: I'm wondering if you could make coff2omf available as part of the basic utility package, like implib already is.  I think it's fair to say that this is in the interest of encouraging adoptation of D. :)
February 24, 2007
torhu wrote:
> I'm working on translating headers for a C lib called allegroGL to D. The C lib isn't set up for building DLLs on windows, only libs for static linking.  So I'm stuck with mingw or msvc lib files that I can't link with my D objects.
> 
> Getting this library to compile to a DLL requires adapting the source, creating .def files, etc.  I'm not too keen on that.
> 
> So Mr. Bright: I'm wondering if you could make coff2omf available as part of the basic utility package, like implib already is.  I think it's fair to say that this is in the interest of encouraging adoptation of D. :)

Can't you just compile it with DMC? It shares the backend with DMD, so it should produce link-compatible output.
February 24, 2007
"Frits van Bommel" <fvbommel@REMwOVExCAPSs.nl> wrote in message news:erpp6f$2cka$1@digitalmars.com...
> torhu wrote:
>> I'm working on translating headers for a C lib called allegroGL to D. The C lib isn't set up for building DLLs on windows, only libs for static linking.  So I'm stuck with mingw or msvc lib files that I can't link with my D objects.
>>
>> Getting this library to compile to a DLL requires adapting the source, creating .def files, etc.  I'm not too keen on that.
>>
>> So Mr. Bright: I'm wondering if you could make coff2omf available as part of the basic utility package, like implib already is.  I think it's fair to say that this is in the interest of encouraging adoptation of D. :)
>
> Can't you just compile it with DMC? It shares the backend with DMD, so it should produce link-compatible output.

Not all libraries come with source.  Yeah, you'll probably say "then you shouldn't use them" but that's just impractical.


February 24, 2007
Jarrett Billingsley wrote:
> "Frits van Bommel" <fvbommel@REMwOVExCAPSs.nl> wrote in message news:erpp6f$2cka$1@digitalmars.com...
>> torhu wrote:
>>> I'm working on translating headers for a C lib called allegroGL to D. The C lib isn't set up for building DLLs on windows, only libs for static linking.  So I'm stuck with mingw or msvc lib files that I can't link with my D objects.
[snip]
>> Can't you just compile it with DMC? It shares the backend with DMD, so it should produce link-compatible output.
> 
> Not all libraries come with source.  Yeah, you'll probably say "then you shouldn't use them" but that's just impractical. 

Actually, I wouldn't say that.

I however do happen to know Allegro _is_ open source, and assumed AllegroGL was as well. And as far as I cam tell I was right about that: http://allegrogl.sourceforge.net/
Anonymous SVN access is provided and it seem the sourceforge download page offers _only_ source downloads. So I'm not even sure where to get a binary static library without building it yourself, though there are usually unofficial binary packagers for such source-only libs.

Now I've just looked at the quickstart docs, and it doesn't seem to provide instructions for DMC. So if it doesn't compile on DMC that's a different story. All I asked was if torhu had looked into the possibility.
February 24, 2007
torhu wrote:
> I'm working on translating headers for a C lib called allegroGL to D. The C lib isn't set up for building DLLs on windows, only libs for static linking.  So I'm stuck with mingw or msvc lib files that I can't link with my D objects.
> 
> Getting this library to compile to a DLL requires adapting the source, creating .def files, etc.  I'm not too keen on that.
> 
> So Mr. Bright: I'm wondering if you could make coff2omf available as part of the basic utility package, like implib already is.  I think it's fair to say that this is in the interest of encouraging adoptation of D. :)

I asked about coff2omf a while back and the response I got from someone on the newsgroup here was "it's hit or miss".  Apparently it doesn't always work.  Now maybe the gentleman telling me that was wrong, but I'm certainly not going to *pay* for it just to find out that it doesn't actually work.  And I think most people are in a situation like you where they have basically ONE library they want to convert ONE time, and  really no need for the rest of the things in the EUP.

So in short, I agree with you, it should be part of the bup.  I can't imagine it's making a huge revenue stream for Walter, anyway.

Or if it is then maybe Walter should provide a web-based coff2omf service.  $2 a pop, and if it doesn't work you don't pay.  Or something like that.  I might give that a try.  :-)

--bb
February 24, 2007
On Sun, 25 Feb 2007 06:14:19 +0900, Bill Baxter wrote:

> torhu wrote:
>> I'm working on translating headers for a C lib called allegroGL to D. The C lib isn't set up for building DLLs on windows, only libs for static linking.  So I'm stuck with mingw or msvc lib files that I can't link with my D objects.
>> 
>> Getting this library to compile to a DLL requires adapting the source, creating .def files, etc.  I'm not too keen on that.
>> 
>> So Mr. Bright: I'm wondering if you could make coff2omf available as part of the basic utility package, like implib already is.  I think it's fair to say that this is in the interest of encouraging adoptation of D. :)
> 
> I asked about coff2omf a while back and the response I got from someone
> on the newsgroup here was "it's hit or miss".  Apparently it doesn't
> always work.  Now maybe the gentleman telling me that was wrong, but I'm
> certainly not going to *pay* for it just to find out that it doesn't
> actually work.  And I think most people are in a situation like you
> where they have basically ONE library they want to convert ONE time, and
>   really no need for the rest of the things in the EUP.
> 
> So in short, I agree with you, it should be part of the bup.  I can't imagine it's making a huge revenue stream for Walter, anyway.
> 
> Or if it is then maybe Walter should provide a web-based coff2omf service.  $2 a pop, and if it doesn't work you don't pay.  Or something like that.  I might give that a try.  :-)
> 
> --bb


It's "hit and miss" precisely for the reason that Walter has said he avoids moving to the coff format for his tools: coff versions and variations seem to have added subtle incompatibilities with each other over the years.  It's never as simple as using the coff2omf tool on an object just because it claims to be "coff". Ever tried getting coff objects from multiple vendors interoperating? It's not likely to work either.

In the past, if you wanted to give coff2omf.exe a fighting chance with
understanding an unsupported MS coff object file, you had to find a
certain version of the MS linker to convert it for you with a
obscure switch (this linker was sometimes only found in a certain hard to
find MS SDK). Even then, it seems it was "hit and miss". In the end, it
seems the coff2omf tool is only useful for a certain version of MS coff
libraries/objects. And if it works, then you were just lucky.

-JJR
February 24, 2007
Frits van Bommel wrote:
 > Can't you just compile it with DMC? It shares the backend with DMD, so
> it should produce link-compatible output.

That's was my first idea, and I converted the makefile.  But there's some preprocessor stuff too that needs adjusting.  At that point i started looking for easier solutions.  So it's not 'just' compiling with DMC, I'm afraid.  I wish it was.

C libraries tend to have complicated build setups, that involve multiple makefiles, scripts, and elaborate use of the preprocessor to adapt code to various compilers.  AllegroGL is no exception.
February 25, 2007
torhu wrote:
> C libraries tend to have complicated build setups, that involve multiple makefiles, scripts, and elaborate use of the preprocessor to adapt code to various compilers.  AllegroGL is no exception.

I agree, and it often can be pretty challenging to get something downloaded off the net to actually compile because of this. It's one reason why D has much more restrictive version statements, etc.
February 25, 2007
Bill Baxter wrote:
> Or if it is then maybe Walter should provide a web-based coff2omf service.  $2 a pop, and if it doesn't work you don't pay.  Or something like that.  I might give that a try.  :-)

It's only $15. And I've been known to give refunds to people it didn't work for, even though I think each of the utilities in the EUP are easily worth $15 by themselves. OBJ2ASM in particular!
February 25, 2007
On Sat, 24 Feb 2007 16:43:31 -0800, Walter Bright wrote:

> Bill Baxter wrote:
>> Or if it is then maybe Walter should provide a web-based coff2omf service.  $2 a pop, and if it doesn't work you don't pay.  Or something like that.  I might give that a try.  :-)
> 
> It's only $15. And I've been known to give refunds to people it didn't work for, even though I think each of the utilities in the EUP are easily worth $15 by themselves. OBJ2ASM in particular!


Personally, I would say that if a person finds it important to get
a library working with dmc/dmd, then it's worth investing in the
digitalmars tools to give it a shot -- specifically the whole dmc compiler
suite which is reasonably priced.

Otherwise, given all the problems a person can have developing on win32
(specifically while trying to work with old object formats), I'd
suggest moving to a unix type operating system instead where these kind of
problems don't exist.  Since the latter is not a practical solution, you
can also just use mingw -- not the best solution, but at least it's well
supported, and uses /a/ coff format.

-JJR

PS. I speak as one who bought the Digitalmars C/C++ compiler suite from Walter a few years ago.  I have no complaints about the quality of software, other than the feeling that some things are outdated.
« First   ‹ Prev
1 2 3 4 5 6 7 8