X-Authentication-Warning: delorie.com: mail set sender to djgpp-bounces using -f From: Tristan Miller Newsgroups: comp.os.msdos.djgpp Subject: Can't compile djgpp cross-compiler on GNU/Linux Date: Fri, 01 Oct 2004 10:40:19 +0200 Organization: http://www.nothingisreal.com/ Lines: 152 Message-ID: <1424088.2sbYVesNpt@ID-187157.News.Individual.NET> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7Bit X-Trace: news.uni-berlin.de ik/TqWg1+pqrH6SmARAG/w1LWDNm6J5bK8UivtcKesVDfc/t6v X-Orig-Path: port-3108.kl.dfki.de!news User-Agent: KNode/0.8.0 X-Accept-Language: en-ca, en-us, en-gb, en, fr, de, ia, x-folkspraak, hu X-Face: ,|JJNi.kzX63(aV,0XbB~?dW%VP=u--Ye!qJWlt$gXhm)|>,->@;eGma\{@.zaH:Y%lrG7N7jLuDwQMOk^#5nC"TL$0e\}b[tNPO#+0PL{(^MeyEIZ(a]Nu)?NJ|+gU0[.Ih6K]rQ<:o.?w0S5w_HRtmMIU2\#G"<[Me[HtW"N=kz%=4"#\]1hhw7&wZV#<4=vGay/$5&~4{~#z]:m<174,Bfj^E8No!zH+1ZMlB/(2705k&5)(<{|U(Z>C[npKiK;qiGb|jdJ=_~mz To: psychonaut AT nothingisreal DOT com Subject: [Bug libstdc++/17755] New: Can't compile djgpp cross-compiler I am trying to compile gcc as a cross-compiler for MS-DOS/Windows. I am essentially using the same steps as presented at , except with binuitls-2.15 and gcc-3.4.2. That is, I have done the following: 1) configured and installed a separate copy of binutils for target i586-pc-msdosdjgpp 2) obtained the gcc-3.4.2 source 3) obtained and applied the djgpp patches for gcc-3.4.2 from 4) configure --prefix=/usr/local/compiler/cross/djgpp --target=i586-pc-msdosdjgpp --with-headers=/usr/local/compiler/cross/djgpp/i586-pc-msdosdjgpp/include 5) make Compilation fails in two places. First I get the following error: /home/psy/software/cross-compiler/src/gnu/gcc-3.4.2-obj/gcc/xgcc -B/home/psy/software/cross-compiler/src/gnu/gcc-3.4.2-obj/gcc/ -B/usr/local/compiler/cross/djgpp/i586-pc-msdosdjgpp/bin/ -B/usr/local/compiler/cross/djgpp/i586-pc-msdosdjgpp/lib/ -isystem /usr/local/compiler/cross/djgpp/i586-pc-msdosdjgpp/include -isystem /usr/local/compiler/cross/djgpp/i586-pc-msdosdjgpp/sys-include -c -DHAVE_CONFIG_H -O2 -g -O2 -I. -I../../../gcc-3.4.2/libiberty/../include -W -Wall -Wtraditional -pedantic ../../../gcc-3.4.2/libiberty/getpwd.c -o getpwd.o ../../../gcc-3.4.2/libiberty/getpwd.c: In function `getpwd': ../../../gcc-3.4.2/libiberty/getpwd.c:86: error: `PATH_MAX' undeclared (first use in this function) ../../../gcc-3.4.2/libiberty/getpwd.c:86: error: (Each undeclared identifier isreported only once ../../../gcc-3.4.2/libiberty/getpwd.c:86: error: for each function it appears in.) make[1]: *** [getpwd.o] Error 1 make[1]: Leaving directory `/var/software_backup/cross-compiler/src/gnu/gcc-3.4.2-obj/i586-pc-msdosdjgpp/libiberty' make: *** [all-target-libiberty] Error 2 PATH_MAX is in , but I believe the definition is in the false branch of a conditional block, so it does not get #defined. (That is, adding #include to getpwd.c has no effect.) Manually adding a #define PATH_MAX 512 to getpwd.c allows compilation to continue until the next error, which I cannot surmount: /home/psy/software/cross-compiler/src/gnu/gcc-3.4.2-obj/gcc/xgcc -shared-libgcc-B/home/psy/software/cross-compiler/src/gnu/gcc-3.4.2-obj/gcc/ -nostdinc++ -L/home/psy/software/cross-compiler/src/gnu/gcc-3.4.2-obj/i586-pc-msdosdjgpp/libstdc++-v3/src -L/home/psy/software/cross-compiler/src/gnu/gcc-3.4.2-obj/i586-pc-msdosdjgpp/libstdc++-v3/src/.libs -B/usr/local/compiler/cross/djgpp/i586-pc-msdosdjgpp/bin/ -B/usr/local/compiler/cross/djgpp/i586-pc-msdosdjgpp/lib/ -isystem /usr/local/compiler/cross/djgpp/i586-pc-msdosdjgpp/include -isystem /usr/local/compiler/cross/djgpp/i586-pc-msdosdjgpp/sys-include -I/var/software_backup/cross-compiler/src/gnu/gcc-3.4.2-obj/i586-pc-msdosdjgpp/libstdc++-v3/include/i586-pc-msdosdjgpp -I/var/software_backup/cross-compiler/src/gnu/gcc-3.4.2-obj/i586-pc-msdosdjgpp/libstdc++-v3/include -I/var/software_backup/cross-compiler/src/gnu/gcc-3.4.2/libstdc++-v3/libsupc++ -O2 -g -O2 -g -O2 -fno-implicit-templates -Wall -W -Wwrite-strings -Wcast-qual -fdiagnostics-show-location=once -c ../../../../gcc-3.4.2/libstdc++-v3/src/allocator.cc -o allocator.o In file included from /var/software_backup/cross-compiler/src/gnu/gcc-3.4.2-obj/i586-pc-msdosdjgpp/libstdc++-v3/include/bits/postypes.h:46, from /var/software_backup/cross-compiler/src/gnu/gcc-3.4.2-obj/i586-pc-msdosdjgpp/libstdc++-v3/include/iosfwd:50, from /var/software_backup/cross-compiler/src/gnu/gcc-3.4.2-obj/i586-pc-msdosdjgpp/libstdc++-v3/include/bits/stl_algobase.h:70, from /var/software_backup/cross-compiler/src/gnu/gcc-3.4.2-obj/i586-pc-msdosdjgpp/libstdc++-v3/include/memory:54, from ../../../../gcc-3.4.2/libstdc++-v3/src/allocator.cc:35: /var/software_backup/cross-compiler/src/gnu/gcc-3.4.2-obj/i586-pc-msdosdjgpp/libstdc++-v3/include/cwchar:65: error: conflicting declaration 'typedef struct mbstate_t mbstate_t' /usr/local/compiler/cross/djgpp/i586-pc-msdosdjgpp/include/wchar.h:27: error: 'mbstate_t' has a previous declaration as `typedef struct mbstate_t mbstate_t' /var/software_backup/cross-compiler/src/gnu/gcc-3.4.2-obj/i586-pc-msdosdjgpp/libstdc++-v3/include/cwchar:65: error: declaration of `typedef struct mbstate_t mbstate_t' /usr/local/compiler/cross/djgpp/i586-pc-msdosdjgpp/include/wchar.h:27: error: conflicts with previous declaration `typedef struct mbstate_t mbstate_t' /var/software_backup/cross-compiler/src/gnu/gcc-3.4.2-obj/i586-pc-msdosdjgpp/libstdc++-v3/include/cwchar:65: error: declaration of `typedef struct mbstate_t mbstate_t' /usr/local/compiler/cross/djgpp/i586-pc-msdosdjgpp/include/wchar.h:27: error: conflicts with previous declaration `typedef struct mbstate_t mbstate_t' /var/software_backup/cross-compiler/src/gnu/gcc-3.4.2-obj/i586-pc-msdosdjgpp/libstdc++-v3/include/cwchar:65: error: declaration of `typedef struct mbstate_t mbstate_t' /usr/local/compiler/cross/djgpp/i586-pc-msdosdjgpp/include/wchar.h:27: error: conflicts with previous declaration `typedef struct mbstate_t mbstate_t' make[3]: *** [allocator.lo] Error 1 make[3]: Leaving directory `/var/software_backup/cross-compiler/src/gnu/gcc-3.4.2-obj/i586-pc-msdosdjgpp/libstdc++-v3/src' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/var/software_backup/cross-compiler/src/gnu/gcc-3.4.2-obj/i586-pc-msdosdjgpp/libstdc++-v3' make[1]: *** [all] Error 2 make[1]: Leaving directory `/var/software_backup/cross-compiler/src/gnu/gcc-3.4.2-obj/i586-pc-msdosdjgpp/libstdc++-v3' make: *** [all-target-libstdc++-v3] Error 2 -- Summary: Can't compile djgpp cross-compiler Product: gcc Version: 3.4.2 Status: UNCONFIRMED Severity: critical Priority: P2 Component: libstdc++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: psychonaut at nothingisreal dot com CC: dhazeghi at yahoo dot com,gcc-bugs at gcc dot gnu dot org,psychonaut at nothingisreal dot com GCC host triplet: i686-pc-linux-gnu GCC target triplet: i586-pc-msdosdjgpp http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17755 ------- You are receiving this mail because: ------- You reported the bug, or are watching the reporter. You are on the CC list for the bug, or are watching someone who is. -- _ _V.-o Tristan Miller [en,(fr,de,ia)] >< Space is limited / |`-' -=-=-=-=-=-=-=-=-=-=-=-=-=-=-= <> In a haiku, so it's hard (7_\\ http://www.nothingisreal.com/ >< To finish what you