On Sep 14 18:15, JonY wrote: > On 9/14/2010 16:03, Corinna Vinschen wrote: > >On Sep 14 15:30, JonY wrote: > >>On 9/14/2010 15:29, Charles Wilson wrote: > >>>I don't know about Andy, but I sure do -- and I can reproduce his > >>>problem. I suspect there is a "bug" in how the cross tool locates the > >>> /usr/x86_64-w64-mingw32/bin > >>>directory, given the mount structure: > >>> /usr/bin = /bin > >>> /usr/lib = /lib > >>>BUT > >>> /usr/x86_64-w64-mingw32 != /x86_64-w64-mingw32 > >>> > >>>because if I do THIS: > >>>mount -o bind /usr/x86_64-w64-mingw32 /x86_64-w64-mingw32 > >>> > >>>then > >>> /bin/x86_64-w64-mingw32-gcc -o foo foo.c > >>>works, just as if I had invoked > >>> x86_64-w64-mingw32-gcc -o foo foo.c > >>> > >>>I say this is a "bug" in quotes, because...well, I'm not sure it fits > >>>the definition. It's *our* fault we use a wacky mount structure on > >>>cygwin... > >>> > >>>-- > >>>Chuck > >>> > >> > >>So, if /usr/x86_64-w64-mingw32 actually exists, it works? > >> > >>This looks bad, nonetheless. > >> > >>Maybe we can fix cygwin by only redirecting known directories like, > >>/usr/bin and /usr/lib to those in /. > > > >Cygwin doesn't redirect any /usr dirs to /. There are default mount > >points for /usr/bin -> /bin and /usr/lib -> lib. That's all. The > >problematic path is generated in gcc itself. > > > > > >Corinna > > > > What do you suggest the fix should be?
I really don't know, but it's certainly not a fix in Cygwin. The fact that /usr/bin is a mount point to /bin is nothing which wouldn't be allowed under Linux as well. There's a default mechanism in gcc which evaluates the paths to the tools, headers and libdb dirs by massaging the $prefix and $exec_prefix values in some way. I assume you can work around this issue by using slightly different values, but I'm not fluent enough with the path evaluationin gcc to suggest the correct solution, for a given value of "correct". Corinna -- Corinna Vinschen Please, send mails regarding Cygwin to Cygwin Project Co-Leader cygwin AT cygwin DOT com Red Hat -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple