digitalmars.D - SCons D support
- Russel Winder (31/31) May 10 2012 I have started having a go at a revamp (but may turn out to be a total
- David Nadlinger (11/25) May 10 2012 LDC packages unfortunately are in a sorry state right now – the
- Gour (10/14) May 10 2012 Let me say that ldc is in the official 'community' repo of Archlinux.
- David Nadlinger (14/28) May 10 2012 [I have been trying to post this via forum.dlang.org for some
- H. S. Teoh (7/9) May 10 2012 [...]
I have started having a go at a revamp (but may turn out to be a total rewrite) of the SCons support for D builds. My focus is entirely on 64-bit Linux so unless other folk chip in, support for obscure platforms like Windows will be minimal ;-) The dmd tool now works with dmd and gdmd. I have the beginnings of a gdc tool which works, and I have put in place the beginnings of an ldc tool but this fails not least because it supports only a very old D version but also because the packaging for Debian seems to have something wrong: ldc -I=3D. -c -of=3DhelloWorld.o helloWorld.d object.d: Error: module object cannot read file 'object.d' This is the first time I have ever run the ldc command so it may be user error. The aim is to refactor all these to create toolchain specific tools and that to put over the top a d_lang tool which infers a toolchain to use. Currently the overall process is to use a D compiler to create object code and then use a linker to link things. The dmd tool (from 2003 long before I fiddled with it) seems to just use GCC as linker rather than using DMD or GDMD. I am still not sure if this is a good or a bad thing, or whether it is just that the "smart linking" code is broken. Anyone interested feel free to join in, the focus is at https://bitbucket.org/russel/scons_d_support --=20 Russel. =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D Dr Russel Winder t: +44 20 7585 2200 voip: sip:russel.winder ekiga.n= et 41 Buckmaster Road m: +44 7770 465 077 xmpp: russel winder.org.uk London SW11 1EN, UK w: www.russel.org.uk skype: russel_winder
May 10 2012
On Thursday, 10 May 2012 at 09:14:10 UTC, Russel Winder wrote:The dmd tool now works with dmd and gdmd. I have the beginnings of a gdc tool which works, and I have put in place the beginnings of an ldc tool but this fails not least because it supports only a very old D version but also because the packaging for Debian seems to have something wrong: ldc -I=. -c -of=helloWorld.o helloWorld.d object.d: Error: module object cannot read file 'object.d' This is the first time I have ever run the ldc command so it may be user error.LDC packages unfortunately are in a sorry state right now – the easiest way to get a working, up-to-date installation is probably to just build it from Git (CMake required). The compiler binary for D2 produced is called ldc2. The specific error you mentioned is a frontend error and means that the druntime (resp. Tango in case of D1) headers are either not installed on your system, or ldc.conf doesn't contain the correct path to it – just as with a wrong/missing dmd.conf in case of DMD. David
May 10 2012
On Thu, 10 May 2012 19:35:02 +0200 "David Nadlinger" <see klickverbot.at> wrote:LDC packages unfortunately are in a sorry state right now =E2=80=93 the=20 easiest way to get a working, up-to-date installation is probably=20 to just build it from Git (CMake required). The compiler binary=20 for D2 produced is called ldc2.Let me say that ldc is in the official 'community' repo of Archlinux. :-) Sincerely, Gour --=20 Perform your prescribed duty, for doing so is better than not=20 working. One cannot even maintain one's physical body without work. http://atmarama.net | Hlapicina (Croatia) | GPG: 52B5C810
May 10 2012
[I have been trying to post this via forum.dlang.org for some hours, hopefully it finally makes its way to the NG now…] --- On Thursday, 10 May 2012 at 09:14:10 UTC, Russel Winder wrote:The dmd tool now works with dmd and gdmd. I have the beginnings of a gdc tool which works, and I have put in place the beginnings of an ldc tool but this fails not least because it supports only a very old D version but also because the packaging for Debian seems to have something wrong: ldc -I=. -c -of=helloWorld.o helloWorld.d object.d: Error: module object cannot read file 'object.d' This is the first time I have ever run the ldc command so it may be user error.LDC packages unfortunately are in a sorry state right now – the easiest way to get a working, up-to-date installation is probably to just build it from Git (CMake required). The compiler binary for D2 produced is called ldc2. The specific error you mentioned is a frontend error and means that the druntime (resp. Tango in case of D1) headers are either not installed on your system, or ldc.conf doesn't contain the correct path to it – just as with a wrong/missing dmd.conf in case of DMD. David
May 10 2012
On Thu, May 10, 2012 at 09:05:14PM +0200, David Nadlinger wrote:[I have been trying to post this via forum.dlang.org for some hours, hopefully it finally makes its way to the NG now…][...] I see this as a duplicate post, actually. I wonder if the NG is just lagged (maybe due to the recent load issues?). T -- The peace of mind---from knowing that viruses which exploit Microsoft system vulnerabilities cannot touch Linux---is priceless. -- Frustrated system administrator.
May 10 2012