Mail Archives: cygwin/1998/08/26/17:32:16
OK folks, now I'm really confused.
> > On Mon, 17 Aug 1998, Fieldhouse, Dirk wrote:
>...
> > > ref: Earnie Boyd's
http://www.cygnus.com/ml/gnu-win32/1998-Apr/0028.html
> > >
> > > I'm trying to set up a dual cygwin32/mingw32 environment with the egcs
1.0.2
> > > cygwin32 binaries and being defeated by some strange behaviour with
search
> > > paths.
>...>
> > > The binary distribution of egcs-1.0.2 for cygwin32 seems to have some
> > > hard-wired directories built into it, specifically
> > >
> > > ../../../../../include
> > > and
> > > ../../../../i386-cygwin32/include
> > >
> >
> > Yeah, this is what I call the "Cygnus unlibsubdir" patch that is
standard
> > with Cygnus built distributions. Basically, unlibsubdir patch relocates
> > the entire GCC package with only one env variable -- GCC_EXEC_PREFIX --
> > and everything is accessed relative to that. This change affects the
> > language drivers, cpp and proto tools only.
But look at this transcript:
BASH.EXE-2.01$ /bin/cpp -v -iprefix
/usr/H-i386-cygwin32/lib/gcc-lib/egcs-2.90.27 glob.c /dev/null
GNU CPP version 2.7-B19 (80386, BSD syntax)
#include "..." search starts here:
#include <...> search starts here:
/usr/H-i386-cygwin32/lib/gcc-lib/egcs-2.90.27../../../../../include
/usr/H-i386-cygwin32/lib/gcc-lib/egcs-2.90.27../../../../i386-cygwin32/inclu
de
c:\programf\gnu\local\include\mingw
c:\programf\gnu\include
c:\programf\gnu\H-i386-cygwin32\i386-cygwin32\include
/usr/include
End of search list.
So the default 2.7-B19 cpp also uses the prefix-relative paths when
-iprefix is used, but prepends them to the C_INCLUDE_PATH. If I still had
gcc-2.7-B19 to hand, I could verify that as I guess it doesn't actually pass
-iprefix to cpp, whereas gcc-2.9 does but ignores C_INCLUDE_PATH.
In any case, I would have expected the search path to start with
C_INCLUDE_PATH followed by compiler version defaults (relative to
GCC_EXEC_PREFIX), followed by global defaults (/usr/include).
And here's a strange 'feature'. With COMPILER_PATH=/usr/bin, where /usr is
mounted on c:\programf\gnu,
BASH.EXE-2.01$ echo $COMPILER_PATH
/usr/bin
gcc-2.90.27 adds the following options to cpp:
-isystem c\include -isystem \programf\gnu\include
Apparently it sees the : from the DOS filename and parses it as a separator.
/df
--
Dirk Fieldhouse Logica UK Limited
fieldhouse AT logica DOT com 75 Hampstead Road
c=gb;a=attmail;p=logica; London NW1 2PL
o=lg;ou1=lgwct;s=fieldhouse UK
+44 (171) 637 9111
-
For help on using this list (especially unsubscribing), send a message to
"gnu-win32-request AT cygnus DOT com" with one line of text: "help".
- Raw text -