Sender: tim AT mxrelay DOT g-net DOT be Message-ID: <3B8614DA.4FDB87DA@falconsoft.be> Date: Fri, 24 Aug 2001 10:48:26 +0200 From: Tim Van Holder Organization: Anubex N.V. X-Mailer: Mozilla 4.77 [en] (X11; U; Linux 2.2.16-3 i686) X-Accept-Language: en, nl-BE, nl MIME-Version: 1.0 To: Will Robinson CC: djgpp AT delorie DOT com Subject: Re: linux->dos cross-compiler References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Reply-To: djgpp AT delorie DOT com Will Robinson wrote: > > > > Looks like the compiler is generating bogus assembler. > > > > Yup. Actually, I can't currently get this far, as binutils 2.11 had a > > serious bug with DJGPP (an assertion failure in the assembler). That's > > probably why I didn't build any of the libs. > > Just FYI, I found that the offending assembler line is: > > def __vptr$__basic_file; .val 0; .scl 8; .type 01124; .endef > > (I compressed some excess whitespace there). > > My assembler knowledge is pretty shallow, so that line is Greek to me. > Just trying to provide all the information I can... Seems to be a bug in the debugging info (gcc is probably not very COFF-oriented). Try changing the -g in the compiler flags to -gstabs (or -gstabs+3 to have huge amounts of debug info); that might help. I'd also suggest submitting a PR about this at the GCC GNATS page. > Looks like it's indeed confused about header locations, but should be > easy to fix(?)... > Result: > > ignoring nonexistent directory > "lib/gcc-lib/i586-pc-msdosdjgpp/3.0.1/include" > ignoring nonexistent directory > "lib/gcc-lib/i586-pc-msdosdjgpp/3.0.1/../../../../i586-pc-msdosdjgpp/sys-include" > ignoring nonexistent directory > "lib/gcc-lib/i586-pc-msdosdjgpp/3.0.1/../../../../i586-pc-msdosdjgpp/include" Those are probably due to the -B option used and are harmless (I hope). > ignoring nonexistent directory > "/opt/djgpp/lib/gcc-lib/i586-pc-msdosdjgpp/3.0.1/include" > ignoring nonexistent directory > "/opt/djgpp/lib/gcc-lib/i586-pc-msdosdjgpp/3.0.1/../../../../i586-pc-msdosdjgpp/sys-include" > ignoring nonexistent directory > "/opt/djgpp/lib/gcc-lib/i586-pc-msdosdjgpp/3.0.1/../../../../i586-pc-msdosdjgpp/include" Unless I'm mistaken, this resolves to /opt/djgpp/i586-pc-msdosdjgpp/include Are you sure you extracted djcrx203 into /opt/djgpp/i586-pc-msdosdjgpp? > #include "..." search starts here: > #include <...> search starts here: > include > End of search list. > /opt/djgpp/i586-pc-msdosdjgpp/bin/as -o foo.o /tmp/ccoAMLMy.s >