DMD in distribute of linux

Jonathan M Davis jmdavisProg at gmx.com
Wed Sep 12 10:51:31 PDT 2012


On Wednesday, September 12, 2012 15:37:21 Habibutsu wrote:
> At now in most distribute of linux contains ldc (LLVM D Compiler) and
> not contain dmd. Why?

Probably for two primary reasons.

One, IIRC, you need Walter's permission to redistribute dmd (which is easy to 
get, but if you never ask, then you'll never get it).

And two, while the source for dmd's backend is available, it's not open source 
in the sense that you can fork it And Walter has no control over that - 
Symantec owns it. As I understand it, Digital Mars leases it, so Walter can 
work on it and distribute it as part of dmd and all that, but he has no 
control over the license. For some distros, this is a non-issue, but for 
others which are more fanatical, anything being distributed with the distro 
must be fully open source, which makes it so that they can't include dmd.

gdc and ldc don't have those issues, because their backends are fully open 
source. All 3 compilers share the same frontend though.

And it could also just be because the person adding it to the distro prefers 
ldc. It takes longer to compile code than dmd does, and it's generally a bit 
behind dmd (maybe a release or so, depending on how fast the ldc devs are), 
but it tends to generate faster code. So, depending on what you're trying to 
do, it's better than dmd. And once gdc is part of gcc-proper (as is supposed 
to happen with the next release of gcc if I understand properly), pretty much 
_every_ Linux distro will have gdc. Some distros _do_ have dmd though.

- Jonathan M Davis


More information about the Digitalmars-d mailing list