www.digitalmars.com         C & C++   DMDScript  

D.gnu - GDC Updated to 2.055/1.070

reply dsimcha <dsimcha yahoo.com> writes:
Thanks to Iain Buclaw's hard work, GDC is now updated to the latest
2.055/1.070 DMD front end.  Get it while it's hot at
https://bitbucket.org/goshawk/gdc/overview .  Generally, I think this forum
should start having announcements when GDC is updated to the latest DMD front
end.  Also, I can't wait to test drive the 64-bit Windows builds, since some
64-bit Windows patches were merged into Phobos.
Sep 12 2011
next sibling parent Adam Burton <adz21c gmail.com> writes:
dsimcha wrote:

 Thanks to Iain Buclaw's hard work, GDC is now updated to the latest
 2.055/1.070 DMD front end.  Get it while it's hot at
 https://bitbucket.org/goshawk/gdc/overview .  Generally, I think this
 forum should start having announcements when GDC is updated to the latest
 DMD front
 end.  Also, I can't wait to test drive the 64-bit Windows builds, since
 some 64-bit Windows patches were merged into Phobos.
Excellent news. Are there any RPMS for openSUSE and/or Fedora about? If so where do I get them and are they for a specific version? If not then I've been maintaining some for my personal use, if that is of use I'd be glad to provide spec files or whatever is needed to get them out there for easier installs for people in the future (I also have old version of debs for ubuntu which worked last time I used them, months ago).
Sep 12 2011
prev sibling parent reply =?UTF-8?B?QW5kZXJzIEYgQmrDtnJrbHVuZA==?= <afb algonet.se> writes:
dsimcha wrote:
 Thanks to Iain Buclaw's hard work, GDC is now updated to the latest
 2.055/1.070 DMD front end.  Get it while it's hot at
 https://bitbucket.org/goshawk/gdc/overview .  Generally, I think this forum
 should start having announcements when GDC is updated to the latest DMD front
 end.  Also, I can't wait to test drive the 64-bit Windows builds, since some
 64-bit Windows patches were merged into Phobos.
I pushed (again) the changes needed for 64-bit Mac OS X, updated for druntime and phobos2. Will see about MinGW64. Mostly about DMD the only compiler and i386 the only arch, and making assumptions based on that in the "OSX" branches. --anders
Sep 13 2011
parent reply =?UTF-8?B?QW5kZXJzIEYgQmrDtnJrbHVuZA==?= <afb algonet.se> writes:
 I pushed (again) the changes needed for 64-bit Mac OS X,
 updated for druntime and phobos2. Will see about MinGW64.
Pushed the 64-bit Windows changes too, compiles but crashes. gdc (GCC) 4.6.2 20110913 (prerelease gdc 0.30, using dmd 2.055) Fortunately one doesn't need Windows, in order to use MinGW... Didn't bother with 32-bit or D1, probably has similar issues. --anders PS. My Mac/Win fork at http://bitbucket.org/anders_f_bjorklund/gdc including the previous patches (not yet merged into the main)
Sep 13 2011
parent reply maarten van damme <maartenvd1994 gmail.com> writes:
is there somewhere an up-to-date repo with gdc in compiling d2? the
precompiled ones I tried were all for d1 and the one I tried to compile
failed with "your c compiler isn't capable of compiling"


2011/9/13 Anders F Bj=F6rklund <afb algonet.se>

 I pushed (again) the changes needed for 64-bit Mac OS X,
 updated for druntime and phobos2. Will see about MinGW64.
Pushed the 64-bit Windows changes too, compiles but crashes. gdc (GCC) 4.6.2 20110913 (prerelease gdc 0.30, using dmd 2.055) Fortunately one doesn't need Windows, in order to use MinGW... Didn't bother with 32-bit or D1, probably has similar issues. --anders PS. My Mac/Win fork at http://bitbucket.org/anders_f_**bjorklund/gdc<http://b=
itbucket.org/anders_f_bjorklund/gdc>
 including the previous patches (not yet merged into the main)
Sep 13 2011
next sibling parent Trass3r <un known.com> writes:
https://bitbucket.org/goshawk/gdc/wiki/Home#!installation
Sep 14 2011
prev sibling parent reply =?ISO-8859-1?Q?Anders_F_Bj=F6rklund?= <afb algonet.se> writes:
maarten van damme wrote:
 is there somewhere an up-to-date repo with gdc in compiling d2? the
 precompiled ones I tried were all for d1 and the one I tried to compile
 failed with "your c compiler isn't capable of compiling"
I'm not doing any more precompiled/binary installers. Check your distro? But for MinGW, I'm now instead using http://mingw-w64.sourceforge.net/ --anders
Sep 14 2011
next sibling parent maarten van damme <maartenvd1994 gmail.com> writes:
I'm using debian testing and there is a gdc in the repositorys but it's onl=
y
compiling d1.
I followed the exact instructions to compile my own version and failed. I'm
going to try again and post the results.

2011/9/14 Anders F Bj=F6rklund <afb algonet.se>

 maarten van damme wrote:

 is there somewhere an up-to-date repo with gdc in compiling d2? the
 precompiled ones I tried were all for d1 and the one I tried to compile
 failed with "your c compiler isn't capable of compiling"
I'm not doing any more precompiled/binary installers. Check your distro? But for MinGW, I'm now instead using http://mingw-w64.sourceforge.**net/<=
http://mingw-w64.sourceforge.net/>
 --anders
Sep 15 2011
prev sibling next sibling parent reply maarten van damme <maartenvd1994 gmail.com> writes:
I tried to follow the instructions as closely as possible and get

      ar rc ./libiberty.a \
        ./regex.o ./cplus-dem.o ./cp-demangle.o ./md5.o ./sha1.o ./alloca.o
./argv.o ./choose-temp.o ./concat.o ./cp-demint.o ./crc32.o ./dyn-string.o
./fdmatch.o ./fibheap.o ./filename_cmp.o ./floatformat.o ./fnmatch.o
./fopen_unlocked.o ./getopt.o ./getopt1.o ./getpwd.o ./getruntime.o
./hashtab.o ./hex.o ./lbasename.o ./lrealpath.o ./make-relative-prefix.o
./make-temp-file.o ./objalloc.o ./obstack.o ./partition.o ./pexecute.o
./physmem.o ./pex-common.o ./pex-one.o ./pex-unix.o ./safe-ctype.o
./simple-object.o ./simple-object-coff.o ./simple-object-elf.o
./simple-object-mach-o.o ./sort.o ./spaces.o ./splay-tree.o ./strerror.o
./strsignal.o ./unlink-if-ordinary.o ./xatexit.o ./xexit.o ./xmalloc.o
./xmemdup.o ./xstrdup.o ./xstrerror.o ./xstrndup.o  ./setproctitle.o; \
      ranlib ./libiberty.a; \
      cd ..; \
    else true; fi
make[3]: Leaving directory
`/home/xxx/gdc_building/gdc/dev/gcc-4.6.1/objdir/build-i686-pc-linux-gnu/libiberty'
make[2]: Leaving directory `/home/xxx/gdc_building/gdc/dev/gcc-4.6.1/objdir'
make[1]: *** [stage1-bubble] Error 2
make[1]: Leaving directory `/home/xxx/gdc_building/gdc/dev/gcc-4.6.1/objdir'
make: *** [all] Error 2
Sep 18 2011
parent Trass3r <un known.com> writes:
 I tried to follow the instructions as closely as possible and get
 [...]
This doesn't show the real error, it should be somewhere above in the log.
Sep 18 2011
prev sibling parent reply maarten van damme <maartenvd1994 gmail.com> writes:
for some reason I don't got your reply but I read it throught the web
interface.
I think the real error is
In file included from /usr/include/bits/errno.h:25:0,
                 from /usr/include/errno.h:36,
                 from ../../../zlib/zutil.h:38,
                 from ../../../zlib/crc32.c:29:
/usr/include/linux/errno.h:4:23: fatal error: asm/errno.h: No such file or
directory
compilation terminated.
make[5]: *** [libz_a-crc32.o] Error 1
make[5]: Leaving directory
`/home/maartenvd1994/gdc_building/gdc/dev/gcc4.6.1/objdir/64/zlib'
make[4]: *** [multi-do] Error 1
make[4]: Leaving directory
`/home/maartenvd1994/gdc_building/gdc/dev/gcc-4.6.1/objdir/zlib'
make[3]: *** [all-multi] Error 2
make[3]: Leaving directory
`/home/maartenvd1994/gdc_building/gdc/dev/gcc-4.6.1/objdir/zlib'
make[2]: *** [all-stage1-zlib] Error 2
make[2]: *** Waiting for unfinished jobs....

I'll recompile and save the output to a file and post it here.
Sep 18 2011
next sibling parent Trass3r <un known.com> writes:
Looks like you can't even compile zlib.
You might try downloading zlib and compiling it to check whether that  
works at all.
Sep 18 2011
prev sibling parent reply a <a a.com> writes:
maarten van damme Wrote:

 for some reason I don't got your reply but I read it throught the web
 interface.
 I think the real error is
 In file included from /usr/include/bits/errno.h:25:0,
                  from /usr/include/errno.h:36,
                  from ../../../zlib/zutil.h:38,
                  from ../../../zlib/crc32.c:29:
 /usr/include/linux/errno.h:4:23: fatal error: asm/errno.h: No such file or
 directory
 compilation terminated.
 make[5]: *** [libz_a-crc32.o] Error 1
 make[5]: Leaving directory
 `/home/maartenvd1994/gdc_building/gdc/dev/gcc4.6.1/objdir/64/zlib'
 make[4]: *** [multi-do] Error 1
 make[4]: Leaving directory
 `/home/maartenvd1994/gdc_building/gdc/dev/gcc-4.6.1/objdir/zlib'
 make[3]: *** [all-multi] Error 2
 make[3]: Leaving directory
 `/home/maartenvd1994/gdc_building/gdc/dev/gcc-4.6.1/objdir/zlib'
 make[2]: *** [all-stage1-zlib] Error 2
 make[2]: *** Waiting for unfinished jobs....
 
 I'll recompile and save the output to a file and post it here.
 
 for some reason I don't got your reply but I read it throught the web
interface.<br>I think the real error is<br>In file included from
/usr/include/bits/errno.h:25:0,<br>                 from
/usr/include/errno.h:36,<br>
                  from ../../../zlib/zutil.h:38,<br>                 from
../../../zlib/crc32.c:29:<br>/usr/include/linux/errno.h:4:23: fatal error:
asm/errno.h: No such file or directory<br>compilation terminated.<br>make[5]:
*** [libz_a-crc32.o] Error 1<br>
 make[5]: Leaving directory
`/home/maartenvd1994/gdc_building/gdc/dev/gcc4.6.1/objdir/64/zlib'<br>make[4]:
*** [multi-do] Error 1<br>make[4]: Leaving directory
`/home/maartenvd1994/gdc_building/gdc/dev/gcc-4.6.1/objdir/zlib'<br>
 make[3]: *** [all-multi] Error 2<br>make[3]: Leaving directory
`/home/maartenvd1994/gdc_building/gdc/dev/gcc-4.6.1/objdir/zlib'<br>make[2]:
*** [all-stage1-zlib] Error 2<br>make[2]: *** Waiting for unfinished
jobs....<br>
 <br>I'll recompile and save the output to a file and post it here.<br><br><br>
 
I had similar problems on debian testing x86_64. Apparently some files have been moved and this causes those problems. For example, /usr/include/asm/errno.h is now at /usr/include/x86_64-linux-gnu/asm/errno.h. Plain gcc failed to compile too. I tried messing around with symlinks and environment variables but failed. Then I have just compiled gdc on debian stable with --prefix=/opt/gdc/ (to not mess up my system), installed it and moved files to debian testing. Before using it I run export PATH=/opt/gdc/bin/:$PATH export LD_LIBRARY_PATH=/lib/x86_64-linux-gnu/ and it works.
Sep 22 2011
parent reply Trass3r <un known.com> writes:
 I had similar problems on debian testing x86_64. Apparently some files  
 have been moved and this causes those problems. For example,  
 /usr/include/asm/errno.h is
 now at /usr/include/x86_64-linux-gnu/asm/errno.h. Plain gcc failed to  
 compile too.
 I tried messing around with symlinks and environment variables but  
 failed.
On Ubuntu the symlink exists. /usr/include/asm -> /usr/include/x86_64-linux-gnu/asm/
Sep 22 2011
parent reply maarten van damme <maartenvd1994 gmail.com> writes:
I've created those symlinks and now libgomp is failing :s
I hope gdc (for D2) gets included in gcc so I can simply download it from
synaptic :D

2011/9/23 Trass3r <un known.com>

 I had similar problems on debian testing x86_64. Apparently some files have
 been moved and this causes those problems. For example,
 /usr/include/asm/errno.h is
 now at /usr/include/x86_64-linux-gnu/**asm/errno.h. Plain gcc failed to
 compile too.
 I tried messing around with symlinks and environment variables but failed.
On Ubuntu the symlink exists. /usr/include/asm -> /usr/include/x86_64-linux-gnu/**asm/
Sep 23 2011
parent reply dsimcha <dsimcha yahoo.com> writes:
== Quote from maarten van damme (maartenvd1994 gmail.com)'s article
 I hope gdc (for D2) gets included in gcc so I can simply download it from
 synaptic :D
I don't think this will ever be a good solution. The glacial and centralized nature of Linux packaging conflicts with the fast-moving nature of D. For example, when I write D code I don't make even the slightest effort to support any compiler/phobos/druntime version other than the latest. Most of my code would probably not even compile with a release from 6 months ago.
Sep 23 2011
next sibling parent maarten van damme <maartenvd1994 gmail.com> writes:
2011/9/23 dsimcha <dsimcha yahoo.com>

 I don't think this will ever be a good solution.  The glacial and
 centralized
 nature of Linux packaging conflicts with the fast-moving nature of D.  For
 example, when I write D code I don't make even the slightest effort to
 support any
 compiler/phobos/druntime version other than the latest.  Most of my code
 would
 probably not even compile with a release from 6 months ago.
Debian unstable keeps up with the newest of the newest. There was even a little update today. And if you make another libphobos/libdruntime package then we can compile that one ourselves if we need a newer phobos lib. It's just so sad compiling it myself is so terribly failing. I wish someone could explain me how to do that in debian testing.
Sep 23 2011
prev sibling parent reply Adam Burton <adz21c gmail.com> writes:
dsimcha wrote:

 == Quote from maarten van damme (maartenvd1994 gmail.com)'s article
 I hope gdc (for D2) gets included in gcc so I can simply download it from
 synaptic :D
I don't think this will ever be a good solution. The glacial and centralized nature of Linux packaging conflicts with the fast-moving nature of D. For example, when I write D code I don't make even the slightest effort to support any compiler/phobos/druntime version other than the latest. Most of my code would probably not even compile with a release from 6 months ago.
Once you have a package it's easy enough to `apt-get source`/download srpm, replace the code and rebuild producing new packages. rpm/apt-get makes sure you got all the dependencies and someone else has already tuned all the paths and any quirks for the distro. Unless there is a significant change to the build it would simplify things for anyone who struggles to build gdc (that doesn't require gdc in gcc though, just that there is a package).
Sep 23 2011
parent reply maarten van damme <maartenvd1994 gmail.com> writes:
It would certainly help having all distro quirks and dependencies dealth
with.
Having a very easy built process will help making more people use gdc and
help avoiding people like me :p


2011/9/23 Adam Burton <adz21c gmail.com>

 dsimcha wrote:
 Once you have a package it's easy enough to `apt-get source`/download srpm,
 replace the code and rebuild producing new packages. rpm/apt-get makes sure
 you got all the dependencies and someone else has already tuned all the
 paths and any quirks for the distro. Unless there is a significant change
 to
 the build it would simplify things for anyone who struggles to build gdc
 (that doesn't require gdc in gcc though, just that there is a package).
Sep 23 2011
parent reply Iain Buclaw <ibuclaw ubuntu.com> writes:
== Quote from maarten van damme (maartenvd1994 gmail.com)'s article
 --0016e6d7e736ea5cfa04ada33393
 Content-Type: text/plain; charset=ISO-8859-1
 It would certainly help having all distro quirks and dependencies dealth
 with.
 Having a very easy built process will help making more people use gdc and
 help avoiding people like me :p
Actually, all distro quirks are internally maintained patches in the distribution, so nothing to do with GDC. The easiest route would be just to obtain the source packages from your distributor and compile GDC using the same method. All patches should still apply OK, and if they don't, let me know, and we can work together on that. :o) This is needed in my zshrc file on Ubuntu: LIBRARY_PATH=/usr/lib/i386-linux-gnu CPATH=/usr/include/i386-linux-gnu export LIBRARY_PATH CPATH Regards Iain
Sep 24 2011
parent maarten van damme <maartenvd1994 gmail.com> writes:
I've exported those variables but it didn't work.

This is needed in my zshrc file on Ubuntu:
 LIBRARY_PATH=/usr/lib/i386-linux-gnu
 CPATH=/usr/include/i386-linux-gnu
 export LIBRARY_PATH CPATH
First error I get is this: In file included from /usr/include/features.h:388:0, from /usr/include/stdio.h:28, from ../../../libgcc/../gcc/tsystem.h:87, from ../../../libgcc/../gcc/libgcc2.c:29: /usr/include/gnu/stubs.h:7:27: fatal error: gnu/stubs-32.h: No such file or directory Easily fixed by doing creating a symbolic link to /usr/include/i386... in /usr/include then I get checking whether make sets $(MAKE)... yes checking for i686-pc-linux-gnu-gcc... /home/maartenvd1994/gdc_building/gdc/dev/gcc-4.6.1/objdir/./gcc/xgcc -B/home/maartenvd1994/gdc_building/gdc/dev/gcc-4.6.1/objdir/./gcc/ -B/opt/gdc/i686-pc-linux-gnu/bin/ -B/opt/gdc/i686-pc-linux-gnu/lib/ -isystem /opt/gdc/i686-pc-linux-gnu/include -isystem /opt/gdc/i686-pc-linux-gnu/sys-include checking for C compiler default output file name... configure: error: in `/home/maartenvd1994/gdc_building/gdc/dev/gcc-4.6.1/objdir/i686-pc-linux-gnu/libgomp': configure: error: C compiler cannot create executables I'm going to try a clean debian stable install in a virtual machine if I have time and try there
Sep 24 2011