Subject: Re: rotd09-25, cygwin beta18
From: [email-masked] (Mumit Khan)

12 Oct 1998 09:40:10 -0700
Message-ID: <[email-masked]>
References: <[email-masked]>
To: Fergus Henderson <[email-masked]>
Cc: Dominique de Waleffe <[email-masked]>, [email-masked],
        Cygnus GNU-win32 mailing list <[email-masked]>

Fergus Henderson <[email-masked]> writes:
> On 11-Oct-1998, Dominique de Waleffe <[email-masked]> 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
"[email-masked]" with one line of text: "help".