OPTLINK needs to die.

Tom S h3r3tic at remove.mat.uni.torun.pl
Mon Feb 16 16:38:32 PST 2009


Jarrett Billingsley wrote:
> That's it -- I'm finished.  I'm tired of constantly rearranging code
> to appease OPTLINK and its outdated object format.
> 
> This is, for me, the number one blocker of most of my more complex
> code on Windows.  More than any DMD bug.  Tom S can vouch for it too,
> and Eldar sounds like he s about to give up on D after dealing with
> OPTLINK's crashes.

Hehehe, agreed :P Out of desperation I've even tried not using OPTLINK 
for one of my programs and loading it at runtime from .obj files using 
DDL instead :P It took 3 seconds to link since DDL needs many 
optimizations, but at least it didn't crash like OPTLINK would :P


> OpenWatcom is not an option.  It seems to be buggy with regards to
> weak symbols.  Furthermore its documentation is sparse at best and its
> option syntax is completely different from OPTLINK's.

Indeed, I've tried Open Watcom's wlink two days ago and it borks on some 
weak symbols from snn.lib, claiming that they are unresolved. The old 
version on its author's site doesn't like long symbol names (since DMD 
and OPTLINK use an extension for the OMF format to allow longer names).
As for the documentation, you probably haven't found it :P There's a 
huge PDF file with examples :)


> I *do not care* how fast OPTLINK is.  I *do not care* how many hours
> of hand-coded assembly went into it.  I want a linker that *works*,
> and preferably one that doesn't use an object format that *no other
> modern compilers use*.

Agreed :P


> Please do not underestimate the importance of this, Walter.  OMF and
> OPTLINK will continue to be a thorn in DMD's side unless you do
> something about it now.

Perhaps our best bet would be fixing the bug in Open Watcom's linker? Or 
rolling something on our own using the code from DDL? I wouldn't mind 
DMD emitting COFF obj files, that the MS linker could process, either :P


-- 
Tomasz Stachowiak
http://h3.team0xf.com/
h3/h3r3tic on #D freenode



More information about the Digitalmars-d mailing list