From: khan AT xraylith DOT wisc DOT edu (Mumit Khan) Subject: Re: rotd09-25, cygwin beta18 12 Oct 1998 09:40:10 -0700 Message-ID: <9810112330.AA07914.cygnus.gnu-win32@modi.xraylith.wisc.edu> References: <19981011205201 DOT 01994 AT murlibobo DOT cs DOT mu DOT OZ DOT AU> To: Fergus Henderson Cc: Dominique de Waleffe , rpa AT miscrit DOT be, Cygnus GNU-win32 mailing list Fergus Henderson writes: > On 11-Oct-1998, Dominique de Waleffe wrote: > > [...] I did an install with a --prefix=//h/m on my home pc. > > > > I then tried to compile an example using the odbc package. > > It could not find the mercury_imp.h file even though gcc > > received -I//h/m/lib/mercury/inc as argument.... > > > > The file was at its expected place. when I mounted h:/m as /mercury > > and temporarily patched the mgnuc script, I was able to compile the > > file. Could it be that b18 gcc does not fully handle the //drive/dir > > notation? > > Yes, I believe that gcc assumes Unix file naming semantics, where > `//' is the same as `/'. GCC now keeps the leading slashes intact on x86-*win32. ``gcc -v'' is a good debugging tool for such problems; it tells you what directories it ends up searching for include paths, and you can see if it's omitting the path you're supplying to it. $ gcc -I//g/tmp/junk -c -v foo.c GNU CPP version egcs-2.91.57 19980901 (egcs-1.1 release) (80386, BSD syntax) #include "..." search starts here: #include <...> search starts here: \\g\tmp\junk C:\cygb19-1.1\H-i386-cygwin32\lib\gcc-lib\i386-cygwin32\ \ egcs-2.91.57\..\..\..\..\..\include [...] b18 is rather old by now. Also, it's hard to tell what's wrong w/out the gcc version number. If you're using b18 gcc, all bets are off. Lots and lots of work have gone into gcc since then, and all of it is in egcs-1.1. If someone needs it for b18, it should be pretty easy to build it from source (please don't ask me for it -- I don't have b18 on my disk anymore). With b19.x, it works as advertised. In fact, you should also be able to do //server/service/include/path with b19, and I'd guess with upcoming b19. $ gcc -I//srcserver/srcroot/tmp/junk -c -v foo.c GNU CPP version egcs-2.91.57 19980901 (egcs-1.1 release) (80386, BSD syntax) #include "..." search starts here: #include <...> search starts here: \\srcserver\srcroot\tmp\junk C:\cygb19-1.1\H-i386-cygwin32\lib\gcc-lib\i386-cygwin32\ \ egcs-2.91.57\..\..\..\..\..\include [...] Of course, you could get rid of these problems and build it on a real OS and treat win32 as an embedded target like I do ;-) Regards, Mumit - 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".