News:

The new Release 25.03 is out! You can download binaries for Windows and many major Linux distros here .

Main Menu

gdc/dmd compiler support on Linux?

Started by philippe.quesnel, November 11, 2006, 08:41:25 PM

Previous topic - Next topic

philippe.quesnel

hi,

i386 Fedora Core6,
C::B nightly nov 10. (same prob w. original FC installed CB)

I only get 3 available compilers  (gnu, intel, sdcc),
how do I use the gdc D compiler ?

hehe, the main reason for installing FC6 was to use gdc w. CB (on a 'more native' gcc platform ;-)
I 'assumed' that gdc being GNU, the CB support for gdc would've been developped for Unix/Linux,
so I was realy surprized to see no gdc on the Linux CB, yet it's avail on Windows !

thx
Philippe

artoj

There's a patch in Berlios (the patch manager) that enables GDC on Linux but I don't think it's applied to the core yet (it has been in the queue for long time though).

mandrav

Quote from: artoj on November 11, 2006, 09:09:18 PM
There's a patch in Berlios (the patch manager) that enables GDC on Linux but I don't think it's applied to the core yet (it has been in the queue for long time though).

afb will look into it. He will be involved with everything D (and also Mac) ;).
Be patient!
This bug will be fixed soon...

philippe.quesnel


Game_Ender

You should be able to use gdmd, its a script front end for gdc that accepts the same command line arguments as dmd.  So if CB supports DMD on windows you should be able to use it on linux gdc through gdmd on linux.

afb

I will enable the GDC "compiler" (and DMD) on Linux too while we look for a solution. As GDC was available on Mac, I kinda assumed it was on Linux too... :-)

The solution I mean is that currently D support is treated as an alternative C/C++ compiler, and that implementation limps a little so it might need to be revised.

afb

Quote from: Game_Ender on November 12, 2006, 01:42:57 AM
You should be able to use gdmd, its a script front end for gdc that accepts the same command line arguments as dmd.  So if CB supports DMD on windows you should be able to use it on linux gdc through gdmd on linux.

Since CB supports both GCC and DMC, I think it should support both GDC and DMD.

philippe.quesnel

Quote from: Game_Ender on November 12, 2006, 01:42:57 AM
You should be able to use gdmd, its a script front end for gdc that accepts the same command line arguments as dmd.  So if CB supports DMD on windows you should be able to use it on linux gdc through gdmd on linux.
yeah,
but both gdc & dmd are already supported on Windows !
(I currently use gdc & CB on Windows)
I was thinking that support for gdc on Linux would only require some config for the Linux build

philippe.quesnel

Quote from: afb on November 12, 2006, 10:29:38 AM
I will enable the GDC "compiler" (and DMD) on Linux too while we look for a solution. As GDC was available on Mac, I kinda assumed it was on Linux too... :-)

coool.

Quote from: afb on November 12, 2006, 10:29:38 AM
The solution I mean is that currently D support is treated as an alternative C/C++ compiler, and that implementation limps a little so it might need to be revised.

would it be a good idea to call one instance of gdc/dmd to build all 'modified' files (that need to be compiled)
vs the traditional one call per file ?

not sure if it's worth it, but from a test I did on Windows w. gdc,
when all the files needed to be compiled (eg building a new lib),
I saved something like 40% of total compile time.

probably something to do w. having to reparse all required imported files on each seperate call ?
...
hehe, then again, what about 'DI' 'precompiled' files support ?

just suggestions anyways.

thank you,
Philippe

afb

Quote from: philippe.quesnel on November 12, 2006, 04:31:45 PM
would it be a good idea to call one instance of gdc/dmd to build all 'modified' files (that need to be compiled)
vs the traditional one call per file ?

It might be but it will be handled the same way that C/C++ is, at least for now.