From: Hans-Bernhard Broeker Newsgroups: comp.os.msdos.djgpp,gnu.gcc.help Subject: Re: iostream: No such file or directory with linux to djgpp cross compiler Date: 15 Aug 2003 16:37:11 GMT Organization: Aachen University of Technology (RWTH) Lines: 58 Message-ID: References: NNTP-Posting-Host: acp3bf.physik.rwth-aachen.de X-Trace: nets3.rz.RWTH-Aachen.DE 1060965431 20863 137.226.32.75 (15 Aug 2003 16:37:11 GMT) X-Complaints-To: abuse AT rwth-aachen DOT de NNTP-Posting-Date: 15 Aug 2003 16:37:11 GMT Originator: broeker@ To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Reply-To: djgpp AT delorie DOT com In comp.os.msdos.djgpp Charles Wilkins <2boxers_at_comcast.net> wrote: > autoconf 2-13 That may not have been an altogether healthy idea. autoconf-2.13 is quite outdated. OTOH, GCC source tarballs shouldn't need autoconf to build, anyway, so that shouldn't really have hurt. > Configured with: ../gcc-3.3/configure > --prefix=/usr/local/compiler/cross/djgpp-2.04 > --target=i586-pc-msdosdjgpp > --with-headers=/usr/local/compiler/cross/djgpp-2.04/i586-pc-msdosdjgpp/include Are you sure you really should have used this --with-headers option? > GNU C++ version 3.3 (i586-pc-msdosdjgpp) > compiled by GNU C version 3.2 (Mandrake Linux 9.0 3.2-1mdk). Hmmm... that seems to contradict what you wrote further up (quote moved down by me:) > all compiled with a gcc-3.3 native compiler. > ignoring nonexistent directory > "/usr/local/lib/gcc-lib/i586-pc-msdosdjgpp/3.3/../../../../include/c++/3.3" This and the following ones appear to be the core of your problem: *all* the places where it's looking for C++ includes are nonexistent, it seems, leaving only C-only paths: > /usr/local/compiler/cross/djgpp-2.04/lib/gcc-lib/i586-pc-msdosdjgpp/3.3/include > /usr/local/compiler/cross/djgpp-2.04/i586-pc-msdosdjgpp/sys-include > /usr/local/compiler/cross/djgpp-2.04/i586-pc-msdosdjgpp/include This hints at an installation problem. Do you have an file anywhere below /usr/local/compiler/cross/djgpp-2.04? > It seems the pathing is screwed up in the linker script somehow. Certainly not the linker script --- you haven't come near the stage where a linker script would be used, yet. The problem is in the definition of include directories used by the preprocessor. > The first 6 paths should start out as > /usr/local/compiler/cross/djgpp-2.04/lib/gcc-lib/~ Im quite sure they shouldn't --- the path they start in is an addition to your --prefix, not an alternative. > The header in question, , does exist in: > /usr/local/compiler/cross/djgpp-2.04/include That means something's gone seriously wrong. C++ headers should never be in there. -- Hans-Bernhard Broeker (broeker AT physik DOT rwth-aachen DOT de) Even if all the snow were burnt, ashes would remain.