D.gnu - GDC pre-release posted
- David Friedman (12/12) Apr 11 2005 Lots of new features, not much documentation. The full release will be
- Dejan Lekic (8/8) Apr 11 2005 PERFECT! I prefer GPL projects and all I can say is _THANKS_! New GDC
- Thomas Kuehne (13/24) Apr 12 2005 -----BEGIN PGP SIGNED MESSAGE-----
- =?ISO-8859-1?Q?Anders_F_Bj=F6rklund?= (15/18) Apr 12 2005 Thanks Thomas, this got me a little further...
- Thomas Kuehne (14/22) Apr 12 2005 -----BEGIN PGP SIGNED MESSAGE-----
- David Friedman (5/38) Apr 12 2005 Argh, I forgot to mention this: The build process has changed and there
- =?ISO-8859-1?Q?Anders_F_Bj=F6rklund?= (7/10) Apr 12 2005 Yeah, ended up actually *reading* the INSTALL when the build failed :-)
- =?ISO-8859-1?Q?Anders_F_Bj=F6rklund?= (42/49) Apr 12 2005 Actually my set up is: (done by the RPM specfile, you see...)
- =?ISO-8859-1?Q?Anders_F_Bj=F6rklund?= (8/10) Apr 12 2005 I get this error when trying to build Phobos:
- =?ISO-8859-1?Q?Anders_F_Bj=F6rklund?= (7/9) Apr 12 2005 In case anyone wonders, the patch is just to make GCC/GDC pass any
- Thomas Kuehne (12/15) Apr 12 2005 -----BEGIN PGP SIGNED MESSAGE-----
- Thomas Kuehne (11/19) Apr 12 2005 Thanks to Anders:
- =?ISO-8859-1?Q?Anders_F_Bj=F6rklund?= (4/7) Apr 12 2005 Actually it was 10.3.8, but there's not really any real difference.
- David Friedman (3/15) Apr 12 2005 Tyger! Tyger! burning bright
- =?ISO-8859-1?Q?Anders_F_Bj=F6rklund?= (33/41) Apr 12 2005 I don't think you need to do that. You can release this as gdc 0.11 ?
- David Friedman (4/63) Apr 12 2005 I still need to fix some bugs and update the documentation (including
- =?ISO-8859-1?Q?Anders_F_Bj=F6rklund?= (5/10) Apr 12 2005 I meant "fix the bugs in this one, *then* release it as 0.11" :-)
- Charlie (4/16) Apr 12 2005 A mingwn build soon to follow :) ?
- bug d.com (7/7) Apr 12 2005 Tried the pre-release with my example large file. cc1d reports:
- David Friedman (6/19) Apr 12 2005 A stack trace will definately be helpful.
- bug d.com (20/20) Apr 13 2005 This problem also doesn't work under gdc:
- David Friedman (5/38) Apr 13 2005 The program to run in gdb is 'cc1d'. You can run gdc with the '-v'
- bug d.com (42/45) Apr 13 2005 Ah, I tried to set BP on 'exit' and 'perror' before with gdc, now I know...
- David Friedman (5/60) Apr 24 2005 Here's something else to try: Apply this patch to gcc/ggc-page.c and
- bug d.com (3/26) Apr 24 2005 Tried, the same problem:
- David Friedman (7/33) Apr 12 2005 Because this was a pre-release and there are still some outstanding
- brad domain.invalid (4/20) Apr 13 2005 I just wanted to say thank you for all the work that you have put in to ...
Lots of new features, not much documentation. The full release will be made when I sync up with the latest DMD version. http://home.earthlink.net/~dvdfrdmn/d/ Major Improvements: * Updated to DMD 0.113 * Phobos is now built as target library (i.e., no need for a separate build step.) * Boehm-gc is no longer used and the Java package is no longer required. * Inline assembler for x86 (some limitations compared to DMD) * Included Anders Björklund's patches to enable the use of frameworks on Darwin. David
Apr 11 2005
PERFECT! I prefer GPL projects and all I can say is _THANKS_! New GDC version is most welcome... Dejan -- ........... Dejan Lekic http://dejan.lekic.org
Apr 11 2005
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 David Friedman schrieb am Tue, 12 Apr 2005 00:03:40 -0400:Lots of new features, not much documentation. The full release will be made when I sync up with the latest DMD version. http://home.earthlink.net/~dvdfrdmn/d/ Major Improvements: * Updated to DMD 0.113 * Phobos is now built as target library (i.e., no need for a separate build step.) * Boehm-gc is no longer used and the Java package is no longer required. * Inline assembler for x86 (some limitations compared to DMD) * Included Anders Björklund's patches to enable the use of frameworks on Darwin.Thank's a lot for your great work David. Somehow Phobos' configure set the target_alias but didn't set the host_alias and as a consequence make tried to create /gcc instead of i686-pc-linux-gnu/gcc. Thomas -----BEGIN PGP SIGNATURE----- iD8DBQFCW8/Z3w+/yD4P9tIRAkG6AJ9Zerq5xY1jM1NyUQJvSCVfYlbqzQCeJy7a 8JPFx7KHK6UIG6MAIPMkY4Q= =2Hgj -----END PGP SIGNATURE-----
Apr 12 2005
Thomas Kuehne wrote:Somehow Phobos' configure set the target_alias but didn't set the host_alias and as a consequence make tried to create /gcc instead of i686-pc-linux-gnu/gcc.Thanks Thomas, this got me a little further... (explicitly setting --host and --build params) Now it seems to be disliking my paths instead: i386-redhat-linux-gcc -o internal/gc/gc.o -O2 -g -pipe -march=i386 -funittest -nostdinc -I ../gcc-3.4.3/gcc/d/phobos -I ../gcc-3.4.3/gcc/d/phobos/internal/gc -I ./i386-redhat-linux -c ../gcc-3.4.3/gcc/d/phobos/internal/gc/gc.d {standard input}: Assembler messages: {standard input}:10: Error: unknown pseudo-op: `..' make: *** [internal/gc/gc.o] Error 1 It's really, really hard to try to pass the standard CFLAGS and DFLAGS to anything in D ? (having similar problems with DMD and recls) --anders
Apr 12 2005
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Anders F Björklund schrieb am Tue, 12 Apr 2005 15:56:25 +0200:Now it seems to be disliking my paths instead: i386-redhat-linux-gcc -o internal/gc/gc.o -O2 -g -pipe -march=i386 -funittest -nostdinc -I ../gcc-3.4.3/gcc/d/phobos -I ../gcc-3.4.3/gcc/d/phobos/internal/gc -I ./i386-redhat-linux -c ../gcc-3.4.3/gcc/d/phobos/internal/gc/gc.d {standard input}: Assembler messages: {standard input}:10: Error: unknown pseudo-op: `..' make: *** [internal/gc/gc.o] Error 1guessing from the error message your directory setup would be somewhere/gcc-3.4.3 somewhere/gcc-3.4.3/gcc/d/phobos somewhere/phobos [you are here and trying to build Phobos] Is that right? Thomas -----BEGIN PGP SIGNATURE----- iD8DBQFCW9j93w+/yD4P9tIRAtdVAKCaxfmIifnbwZTuKdQGSIf4SEXNwACfXCBl 9YM/Vgdo3SSoVv4rT2Q8rRQ= =Ujhp -----END PGP SIGNATURE-----
Apr 12 2005
Thomas Kuehne wrote:-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Anders F Björklund schrieb am Tue, 12 Apr 2005 15:56:25 +0200:Argh, I forgot to mention this: The build process has changed and there is no need to build Phobos separately. The INSTALL file has been updated and explains the new process. Don't worry, it's a lot easier now. DavidNow it seems to be disliking my paths instead: i386-redhat-linux-gcc -o internal/gc/gc.o -O2 -g -pipe -march=i386 -funittest -nostdinc -I ../gcc-3.4.3/gcc/d/phobos -I ../gcc-3.4.3/gcc/d/phobos/internal/gc -I ./i386-redhat-linux -c ../gcc-3.4.3/gcc/d/phobos/internal/gc/gc.d {standard input}: Assembler messages: {standard input}:10: Error: unknown pseudo-op: `..' make: *** [internal/gc/gc.o] Error 1guessing from the error message your directory setup would be somewhere/gcc-3.4.3 somewhere/gcc-3.4.3/gcc/d/phobos somewhere/phobos [you are here and trying to build Phobos] Is that right? Thomas -----BEGIN PGP SIGNATURE----- iD8DBQFCW9j93w+/yD4P9tIRAtdVAKCaxfmIifnbwZTuKdQGSIf4SEXNwACfXCBl 9YM/Vgdo3SSoVv4rT2Q8rRQ= =Ujhp -----END PGP SIGNATURE-----
Apr 12 2005
David Friedman wrote:Argh, I forgot to mention this: The build process has changed and there is no need to build Phobos separately. The INSTALL file has been updated and explains the new process. Don't worry, it's a lot easier now.Yeah, ended up actually *reading* the INSTALL when the build failed :-) And with a little luck, it should be no longer needed to provide a /opt/gdc/gcc and /opt/gdc/g++ for Mac OS X... That should cut down the download size for GDC, from 30 MB to a tiny 3 MB or something! The vanilla build completed on Mac OS X, so I will test that later on... --anders
Apr 12 2005
Thomas Kuehne wrote:guessing from the error message your directory setup would be somewhere/gcc-3.4.3 somewhere/gcc-3.4.3/gcc/d/phobos somewhere/phobos [you are here and trying to build Phobos] Is that right?Actually my set up is: (done by the RPM specfile, you see...) BUILD/ gdc-0.11pre1-gcc-3.4.3/ gcc-3.4.3 obj-i386-redhat-linux gdc-temp phobos-unittest phobos-contracts phobos-release Where gcc-3.4.3 are the patched GCC/GDC sources, unpacked from gcc-core-%{gcc_version}.tar.bz2 and gcc-g++-%{gcc_version}.tar.bz2, and then gdc-%{gdc_version}.tar.bz2 is added as "gcc-?.?.?/gcc/d" And I'm building GCC/GDC in the "obj-%{_target_platform}" directory, and temporarily installing it in the "gdc-temp" directory to build Phobos in the "phobos-***" and the "phobos-release" directories... But I will fall back to building a vanilla version, since it seems that David has added a new toplev patch and that my Make hacks don't work: make libphobos.a unittest \ CC="gcc" CFLAGS="$OPT_FLAGS -DPHOBOS_USE_PTHREADS=1 -DHAVE_CONFIG_H -Ietc/c/stlsoft -I." \ DMD="gdc" DFLAGS="$OPT_FLAGS -funittest -nostdinc" ./unittest || exit 1 It's possible that this can be made simpler now, with the new "check-target-libphobos" Maybe one can even pass the flags directly to configure, now that the whining "boehm-gc" target is not needed anymore ? Who knows, maybe it can even be built with "make -j3" now... All that I *really* want to do is to pass $OPT_FLAGS along to the various C/C++/D builds - it is currently constructed from $RPM_OPT_FLAGS, minus all flags that GCC and libiberty hates: OPT_FLAGS=`echo $RPM_OPT_FLAGS|sed -e 's/-fno-rtti//g' -e 's/-fno-exceptions//g'` OPT_FLAGS=`echo $OPT_FLAGS|perl -pe 's/ ?-mcpu=([^ ]+)//g'` Where the standard i386 $RPM_OPT_FLAGS is: #rpm --eval %{optflags} -O2 -g -pipe -march=i386 -mcpu=i686 Then I use the setting of "-funittest" for phobos-unittest, "" for phobos-contracts and "-frelease" for phobos-release ? Rest of the flags crud was just added to make it limp along... --anders
Apr 12 2005
David Friedman wrote:Lots of new features, not much documentation. The full release will be made when I sync up with the latest DMD version.I get this error when trying to build Phobos: "configure: error: Sorry, you must provide the target-specific configure fragments (--enable-phobos-config-dir)" I tried adding --disable-phobos-config-dir, but that didn't help much... And making it a fake directory just made "frag-unix not found". --anders
Apr 12 2005
David Friedman wrote:* Included Anders Björklund's patches to enable the use of frameworks on Darwin.In case anyone wonders, the patch is just to make GCC/GDC pass any -framework on to the system linker, to avoid the clunky alternative: "-framework Whatever" => "-Wl,-framework,Whatever" It just makes doing GDC things a little nicer on the Mac OS X platform. Especially with the new fix to make it co-exist with Apple's GCC/G++ ! --anders
Apr 12 2005
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 David Friedman schrieb am Tue, 12 Apr 2005 00:03:40 -0400:Lots of new features, not much documentation. The full release will be made when I sync up with the latest DMD version. http://home.earthlink.net/~dvdfrdmn/d/FYI http://dstress.kuehne.cn/raw_results/linux-i686_gdc-0.11pre http://dstress.kuehne.cn/raw_results/linux-i686_gdc-0.11pre.log Thomas -----BEGIN PGP SIGNATURE----- iD8DBQFCW+Sy3w+/yD4P9tIRAqvJAJ41YaZMHnkCl57GyKAVayE0IkPbFgCdH3Px fW+phdVz3xZCSEUPi8gPUJY= =nHdx -----END PGP SIGNATURE-----
Apr 12 2005
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1David Friedman schrieb am Tue, 12 Apr 2005 00:03:40 -0400:Thanks to Anders: http://dstress.kuehne.cn/raw_results/mac-OS-X-10.3.7_gdc-0.11pre http://dstress.kuehne.cn/raw_results/mac-OS-X-10.3.7_gdc-0.11pre.log Thomas -----BEGIN PGP SIGNATURE----- iD8DBQFCW/z73w+/yD4P9tIRAtFRAKDHnRn0V/T1xL5k5B4tudvvMwhupACgu19o HF0tc7TJeEYjA05VJeu8xVM= =bU1P -----END PGP SIGNATURE-----Lots of new features, not much documentation. The full release will be made when I sync up with the latest DMD version. http://home.earthlink.net/~dvdfrdmn/d/FYI http://dstress.kuehne.cn/raw_results/linux-i686_gdc-0.11pre http://dstress.kuehne.cn/raw_results/linux-i686_gdc-0.11pre.log
Apr 12 2005
Thomas Kuehne wrote:Thanks to Anders: http://dstress.kuehne.cn/raw_results/mac-OS-X-10.3.7_gdc-0.11pre http://dstress.kuehne.cn/raw_results/mac-OS-X-10.3.7_gdc-0.11pre.logActually it was 10.3.8, but there's not really any real difference. "Panther"... BTW, 10.4 Tiger - with GCC 4.0 - was announced today! --anders
Apr 12 2005
Anders F Björklund wrote:Thomas Kuehne wrote:Tyger! Tyger! burning bright I'm shelling out 130 bucks tonight :-pThanks to Anders: http://dstress.kuehne.cn/raw_results/mac-OS-X-10.3.7_gdc-0.11pre http://dstress.kuehne.cn/raw_results/mac-OS-X-10.3.7_gdc-0.11pre.logActually it was 10.3.8, but there's not really any real difference. "Panther"... BTW, 10.4 Tiger - with GCC 4.0 - was announced today! --anders
Apr 12 2005
David Friedman wrote:Lots of new features, not much documentation. The full release will be made when I sync up with the latest DMD version.I don't think you need to do that. You can release this as gdc 0.11 ? And then release DMD 0.120 compatibility as gdc 0.12 "pre" instead...Major Improvements: * Included Anders Björklund's patches to enable the use of frameworks on Darwin.(and from the GDC home page: )Likewise, gdc can link C++ object code built by the system g++.This is most *excellent* news! Now you can build a link D programs with regular C libraries and system frameworks, without the need for a custom GCC build installed on the system. Works just great! The download/install also shrinked considerable, compared to 0.10: Binaries: 8.0K /opt/gdc/bin/dmd 288K /opt/gdc/bin/gdc 2.0M /opt/gdc/include/d 2.3M /opt/gdc/lib/libphobos.a 4.0K /opt/gdc/lib/libphobos.spec 3.1M /opt/gdc/lib/gcc-lib/powerpc-apple-darwin7.8.0/3.3.5/cc1d 4.0K /opt/gdc/lib/gcc-lib/powerpc-apple-darwin7.8.0/3.3.5/crt2.o 4.0K /opt/gdc/share/man/man1/dmd.1 4.0K /opt/gdc/share/man/man1/gdc.1 ==== 2.0M gdc.zip Sources: 11M gcc-core-3.3.5.tar.bz2 2.1M gcc-g++-3.3.5.tar.bz2 788K gdc-0.11pre1.tar.bz2 One might even consider "promoting" GDC back up to /usr again... Since now it wouldn't interfere with the system C/C++ compilers. But compiling D is now as simple as a /opt/gdc/bin/gdc, anyway. D usability on the Mac OS X platform climbed up a whole ladder! Now all we need is those D name-mangling patches for GDC, but they seem to be coming along just nicely on Dsource ? http://www.dsource.org/forums/viewforum.php?f=58 (demangler is done, "just" integration left todo) --anders
Apr 12 2005
Anders F Björklund wrote:David Friedman wrote:I still need to fix some bugs and update the documentation (including your man pages ;-) DavidLots of new features, not much documentation. The full release will be made when I sync up with the latest DMD version.I don't think you need to do that. You can release this as gdc 0.11 ? And then release DMD 0.120 compatibility as gdc 0.12 "pre" instead...Major Improvements: * Included Anders Björklund's patches to enable the use of frameworks on Darwin.(and from the GDC home page: )Likewise, gdc can link C++ object code built by the system g++.This is most *excellent* news! Now you can build a link D programs with regular C libraries and system frameworks, without the need for a custom GCC build installed on the system. Works just great! The download/install also shrinked considerable, compared to 0.10: Binaries: 8.0K /opt/gdc/bin/dmd 288K /opt/gdc/bin/gdc 2.0M /opt/gdc/include/d 2.3M /opt/gdc/lib/libphobos.a 4.0K /opt/gdc/lib/libphobos.spec 3.1M /opt/gdc/lib/gcc-lib/powerpc-apple-darwin7.8.0/3.3.5/cc1d 4.0K /opt/gdc/lib/gcc-lib/powerpc-apple-darwin7.8.0/3.3.5/crt2.o 4.0K /opt/gdc/share/man/man1/dmd.1 4.0K /opt/gdc/share/man/man1/gdc.1 ==== 2.0M gdc.zip Sources: 11M gcc-core-3.3.5.tar.bz2 2.1M gcc-g++-3.3.5.tar.bz2 788K gdc-0.11pre1.tar.bz2 One might even consider "promoting" GDC back up to /usr again... Since now it wouldn't interfere with the system C/C++ compilers. But compiling D is now as simple as a /opt/gdc/bin/gdc, anyway. D usability on the Mac OS X platform climbed up a whole ladder! Now all we need is those D name-mangling patches for GDC, but they seem to be coming along just nicely on Dsource ? http://www.dsource.org/forums/viewforum.php?f=58 (demangler is done, "just" integration left todo) --anders
Apr 12 2005
David Friedman wrote:I meant "fix the bugs in this one, *then* release it as 0.11" :-) And wait with the new DMD features and stuff for 0.12 instead ? (Assuming that it would be easier to release 0.11 without them) --andersI don't think you need to do that. You can release this as gdc 0.11 ? And then release DMD 0.120 compatibility as gdc 0.12 "pre" instead...I still need to fix some bugs and update the documentation (including your man pages ;-)
Apr 12 2005
A mingwn build soon to follow :) ? Charlie "David Friedman" <d3rdclsmail_a_ _t_earthlink_d_._t_net> wrote in message news:d3fh9n$1gur$1 digitaldaemon.com...Lots of new features, not much documentation. The full release will be made when I sync up with the latest DMD version. http://home.earthlink.net/~dvdfrdmn/d/ Major Improvements: * Updated to DMD 0.113 * Phobos is now built as target library (i.e., no need for a separate build step.) * Boehm-gc is no longer used and the Java package is no longer required. * Inline assembler for x86 (some limitations compared to DMD) * Included Anders Björklund's patches to enable the use of frameworks on Darwin. David
Apr 12 2005
Tried the pre-release with my example large file. cc1d reports: virtual memory exhausted: Cannot allocate memory Even though I have ~350M phisical free memory as shown by top. gdc fails after about 250M allocation. What's the flag I should pass to "configure" to build a debugging version of gdc? I can try to generate the stack trace of gdc itself when it fails. Do you think this will help?
Apr 12 2005
bug d.com wrote:Tried the pre-release with my example large file. cc1d reports: virtual memory exhausted: Cannot allocate memory Even though I have ~350M phisical free memory as shown by top. gdc fails after about 250M allocation. What's the flag I should pass to "configure" to build a debugging version of gdc? I can try to generate the stack trace of gdc itself when it fails. Do you think this will help?A stack trace will definately be helpful. Setting the CFLAGS environment variable to '-O0 -g' before running configure should work. You could also uncomment 'D_CC_FLAGS += -O0 -g' in d/Make-lang.in. David
Apr 12 2005
This problem also doesn't work under gdc: http://www.digitalmars.com/drn-bin/wwwnews?digitalmars.D/21401 Some info regarding my bug with large files: I have lot's of things like (T/A/B) as described in the above. Separate compilation always gives many errors like: b.d:9: size of type T!(B) is not known b.d:9: size of type T!(B) is not known I'm not sure if this is a bug or feature? (both DMD and GDC behave the same.) So I wrote a script to generate all of them into one big file, then DMD works. But GDC fails with: "virtual memory exhausted: Cannot allocate memory". By setting CFLAGS='-O0 -g', I was able to debug gdc, but I don't know where to set breakpoint. Detaching after fork from child process 20376. virtual memory exhausted: Cannot allocate memory Program exited with code 01. (gdb) Grep the error message doesn't give me much help, there are many occurance of "virtual memory exhausted", but not occurance of "Cannot allocate memory". Can you give me some hint here, where to set break point to catch the stack trace?
Apr 13 2005
bug d.com wrote:This problem also doesn't work under gdc: http://www.digitalmars.com/drn-bin/wwwnews?digitalmars.D/21401 Some info regarding my bug with large files: I have lot's of things like (T/A/B) as described in the above. Separate compilation always gives many errors like: b.d:9: size of type T!(B) is not known b.d:9: size of type T!(B) is not known I'm not sure if this is a bug or feature? (both DMD and GDC behave the same.) So I wrote a script to generate all of them into one big file, then DMD works. But GDC fails with: "virtual memory exhausted: Cannot allocate memory". By setting CFLAGS='-O0 -g', I was able to debug gdc, but I don't know where to set breakpoint. Detaching after fork from child process 20376. virtual memory exhausted: Cannot allocate memory Program exited with code 01. (gdb) Grep the error message doesn't give me much help, there are many occurance of "virtual memory exhausted", but not occurance of "Cannot allocate memory". Can you give me some hint here, where to set break point to catch the stack trace?The program to run in gdb is 'cc1d'. You can run gdc with the '-v' option to see what the exact command line for cc1d is. Then set breakpoints on 'exit' and 'perror'. David
Apr 13 2005
In article <d3kfqs$2ptg$1 digitaldaemon.com>, David Friedman says...The program to run in gdb is 'cc1d'. You can run gdc with the '-v' option to see what the exact command line for cc1d is. Then set breakpoints on 'exit' and 'perror'.Ah, I tried to set BP on 'exit' and 'perror' before with gdc, now I know why it doesn't work :-) Here is the stack trace I got by watching cc1d. If you need any more info, let me know. Thanks. ------------------------------------------------------------------------- (gdb) b perror Breakpoint 2 at 0x4015f256 (gdb) b exit Breakpoint 3 at 0x4013a386 (gdb) cont Continuing. GNU D version 3.3.5 (i686-pc-linux-gnu) compiled by GNU C version 3.3.3 20040412 (Gentoo Linux 3.3.3-r6, ssp-3.3.2-2, pie-8.7.6). GGC heuristics: --param ggc-min-expand=47 --param ggc-min-heapsize=32768 cc1d: out of memory allocating 4072 bytes after a total of 199913472 bytes Breakpoint 3, 0x4013a386 in exit () from /lib/libc.so.6 (gdb) where at d/d-glue.cc:1967 at d/dmd/attrib.c:129 at d/dmd/toobj.c:211 at d/dmd/template.c:1829 (gdb)
Apr 13 2005
bug d.com wrote:In article <d3kfqs$2ptg$1 digitaldaemon.com>, David Friedman says...Here's something else to try: Apply this patch to gcc/ggc-page.c and rebuild. There's no need to run it in gdb; just try compiling the source file. If it works, it means I have a garbage collection bug. DavidThe program to run in gdb is 'cc1d'. You can run gdc with the '-v' option to see what the exact command line for cc1d is. Then set breakpoints on 'exit' and 'perror'.Ah, I tried to set BP on 'exit' and 'perror' before with gdc, now I know why it doesn't work :-) Here is the stack trace I got by watching cc1d. If you need any more info, let me know. Thanks. ------------------------------------------------------------------------- (gdb) b perror Breakpoint 2 at 0x4015f256 (gdb) b exit Breakpoint 3 at 0x4013a386 (gdb) cont Continuing. GNU D version 3.3.5 (i686-pc-linux-gnu) compiled by GNU C version 3.3.3 20040412 (Gentoo Linux 3.3.3-r6, ssp-3.3.2-2, pie-8.7.6). GGC heuristics: --param ggc-min-expand=47 --param ggc-min-heapsize=32768 cc1d: out of memory allocating 4072 bytes after a total of 199913472 bytes Breakpoint 3, 0x4013a386 in exit () from /lib/libc.so.6 (gdb) where at d/d-glue.cc:1967 at d/dmd/attrib.c:129 at d/dmd/toobj.c:211 at d/dmd/template.c:1829 (gdb)
Apr 24 2005
Tried, the same problem: virtual memory exhausted: Cannot allocate memory But the line number is different, I'm using gcc-3.3.5.Here's something else to try: Apply this patch to gcc/ggc-page.c and rebuild. There's no need to run it in gdb; just try compiling the source file. If it works, it means I have a garbage collection bug. David --------------010200080606090909070300 Content-Type: text/plain; x-mac-type="0"; x-mac-creator="0"; name="gcc-page.patch" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="gcc-page.patch" *** ggc-page.c.orig Tue Apr 19 19:14:34 2005 --- ggc-page.c Sun Apr 24 15:24:37 2005 *************** *** 1774,1779 **** --- 1774,1780 ---- void ggc_collect (void) { + return; /* Avoid frequent unnecessary work by skipping collection if the total allocations haven't expanded much since the last collection. */ --------------010200080606090909070300--
Apr 24 2005
Because this was a pre-release and there are still some outstanding issues, I didn't want to announce it just yet... But yes, you can at least build a cross compiler with a mingw32 target now. I haven't tried a native build under MSYS/Cygwin. BTW, this is the only cross target currently supported 'out of the box'. David Charlie wrote:A mingwn build soon to follow :) ? Charlie "David Friedman" <d3rdclsmail_a_ _t_earthlink_d_._t_net> wrote in message news:d3fh9n$1gur$1 digitaldaemon.com...Lots of new features, not much documentation. The full release will be made when I sync up with the latest DMD version. http://home.earthlink.net/~dvdfrdmn/d/ Major Improvements: * Updated to DMD 0.113 * Phobos is now built as target library (i.e., no need for a separate build step.) * Boehm-gc is no longer used and the Java package is no longer required. * Inline assembler for x86 (some limitations compared to DMD) * Included Anders Björklund's patches to enable the use of frameworks on Darwin. David
Apr 12 2005
David Friedman wrote:Lots of new features, not much documentation. The full release will be made when I sync up with the latest DMD version. http://home.earthlink.net/~dvdfrdmn/d/ Major Improvements: * Updated to DMD 0.113 * Phobos is now built as target library (i.e., no need for a separate build step.) * Boehm-gc is no longer used and the Java package is no longer required. * Inline assembler for x86 (some limitations compared to DMD) * Included Anders Björklund's patches to enable the use of frameworks on Darwin. DavidI just wanted to say thank you for all the work that you have put in to GDC. Thanks Brad
Apr 13 2005