DMD - Windows

Adam Wilson flyboynw at gmail.com
Sat Jan 7 00:40:38 PST 2012


On Fri, 06 Jan 2012 23:31:52 -0800, torhu <no at spam.invalid> wrote:

> On 06.01.2012 21:02, Adam Wilson wrote:
>>
>> COFF is an absolute requirements when working on Windows, yet DMD  
>> doesn't
>> support it. Everything, every programming interface, every application
>> running on x64 Windows is built with COFF, the default output of every
>> other compiler on Windows is COFF, everyone else programming on Windows  
>> is
>> expecting COFF.
>> Windows represents the largest OS install base in the world; and yet,
>> Windows based D programmers are told that they have to dig up extremely
>> esoteric tools from the darkest, smelliest, most cobwebbed corners of  
>> the
>> Internet, just to be able to interact with the the rest of the Windows
>> world.
>>
>> This situation is simply unacceptable.
>
> It's not that bad.  Most libraries can be compiled to DLL files, in fact  
> that's often the default.  DMD/Optlink can use DLL files created by  
> other tool chains just fine. If an import library in the correct format  
> is not available, just use implib or coffimplib to create one.  No  
> problem.

First of all, what if I want to use a DLL lib file that was created by DMD  
in VC++? Oh right, can't do that either. I know there are converter tools  
available, but all of them are closed source, and what if the creator  
decides one day that he is done? I'm stuck with no source and potential  
bugs.
Second, as a professional, the idea that somehow the advice to download  
Esoteric Tool X from Shady FTP Server Y is acceptable is completely beyond  
me. No professional compiler implementation would DARE give that advice to  
it's clients, they'd laugh and find another compiler that did what they  
want. The concept of kludging together a build toolchain is uniquely open  
source. DMD will never get buy-in from large groups of professionals  
without natively supporting the things those professionals expect.

Let me state that again for clarity. If DMD does not natively support the  
standard outputs that professionals have come to expect and demand, then  
DMD will forever remain a hobby toy.

Professionals don't have time to kludge together a [fragile] build  
toolchain and support it, they have work to do. Given the choice for a  
large project right now, i'd have to say VC++ wins on Windows every time,  
it's got COFF, excellent tooling and libraries, and x64 support; but  
mostly, it works with everything Windows. DMD does not. Until DMD does,  
professionals cannot seriously consider DMD.

> Some of the D bindings for C libraries include build scripts for  
> building the library with DMC, to allow for static linking with D  
> programs.  Most don't, but you can still get by just fine with the DLL  
> build of the library.


-- 
Adam Wilson
Project Coordinator
The Horizon Project
http://www.thehorizonproject.org/


More information about the Digitalmars-d mailing list