Linking with/Debugging static C/C++ libraries

Trass3r un at known.com
Mon May 30 05:57:13 PDT 2011


Am 30.05.2011, 04:09 Uhr, schrieb Jeff Slutter <MrMustard at gmail.com>:
> One of the things that's important to us is being able to link against
> some existing C/C++ static libraries (built with VS 2008, so PE COFF
> format).

Good luck with that. DLLs are no problem but static libraries are another  
story.
objconv has never done the job for me. I'm surprised that it worked in  
your test.
And compiling the code with dmc is a real PITA.

Maybe dmd will finally switch to COFF output in the course of 64Bit  
transition but even then the 2 different compilers might generate  
incompatible code.

There is a linker named Unilink though, which is reportedly able to link  
OMF and COFF files out of the box.
But it doesn't even have a homepage, only an ftp server that's hard to  
find. Plus it's closed source so you can't assess whether it will continue  
to be developed, if it becomes commercial one day etc.


> For what it's worth, using GDC and GCC/MingW (TDM), I was able to build
> and debug a D/C/C++ mixed executable. I had to use GDB (though WinGDB
> works just dandy), but the downside is I'm not using Visual D (unless
> Visual D supports GDC??), nor DMD. DMD seems that it would be more
> supported and stable right now than GDC, which seems to play catch up. I
> worry that, as a user of GDC, hitting a compiler bug, would take longer
> to get an official fix for, than it would for DMD.

GDC shares the frontend with dmd, so it will benefit from any FE bug fixed  
there.
Regarding the glue code, it is currently maintained by Iain alone. He  
tends to be quite active though.


OT: You are R&D and still use Windoze? ;)


More information about the Digitalmars-d-learn mailing list