Mail Archives: cygwin/2000/04/26/13:32:00
Well, I am not actually trying to use "-I./" as a search path for
<sys/cdefs.h>. I realize that the standard, default include path for the
compiler includes "/usr/i686-pc-cygwin/include". That is where
<sys/cdefs.h> will/should be found. However, when I try to use
"-Isomething" to find include files that my application needs that are not
located in the standard (i.e. POSIX, Ansi C, etc...), that is when I have
problems.
For instance, I may have a file "hello.h" which resides in the subdirectory
"./include". In order to compile the source "hello.cpp" in the current
directory I would need to say: g++ -I./include -c hello.cpp. Any standard
headers like iostream.h, stdio.h, stdlib.h, etc... are found in the default
search path and non-standard headers like hello.h are found in my ./include
directory. However, when I use "-I./include" as an option to the compiler I
begin getting strange errors such as the "invalid argument" error. The only
way to correct this problem is to compile with: g++ -I/usr/include
-I/usr/i686-pc-cygwin/include -I./include -c hello.cpp.
I am tempted to grab the gcc-2.95.2 source and build a new version from
scratch. I can't believe that should make a difference, but what else
should I try?
Larry
-----Original Message-----
From: Bernard Dautrevaux [SMTP:Dautrevaux AT microprocess DOT com]
Sent: Wednesday, April 26, 2000 11:29 AM
To: 'Fontenot Larry A DLVA'; 'cygwin AT sourceware DOT cygnus DOT com'
Subject: RE: Weird behavior when using "-I" with gcc-2.95.2
> -----Original Message-----
> From: Fontenot Larry A DLVA [mailto:FontenotLA AT NSWC DOT NAVY DOT MIL]
> Sent: Tuesday, April 25, 2000 9:04 PM
> To: 'cygwin AT sourceware DOT cygnus DOT com'
> Cc: Fontenot Larry A DLVA
> Subject: RE: Weird behavior when using "-I" with gcc-2.95.2
>
>
>
> Well, the only solution I could come up with was to compile with
the
> following:
> g++ -I /usr/i686-pc-cygwin/include -I./ -c hello.cpp
>
And what happens if you use -I. instead of -I./; "-Isomething" is
used to
search "#include <file>" as "something/file", so using "-I./" to get
"<sys/cdefs.h>" will try to look at ".//sys/cdefs.h" which is an
invalid
path as "//" should only occur at the beginning of a path name under
Losedows :-)
HTH
Bernard
--------------------------------------------
Bernard Dautrevaux
Microprocess Ingéniérie
97 bis, rue de Colombes
92400 COURBEVOIE
FRANCE
Tel: +33 (0) 1 47 68 80 80
Fax: +33 (0) 1 47 88 97 85
e-mail: dautrevaux AT microprocess DOT com
b DOT dautrevaux AT usa DOT net
--------------------------------------------
--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe AT sourceware DOT cygnus DOT com
- Raw text -