On Thursday 17 April 2008 00:42, Daniel Jacobowitz wrote:
> On Wed, Apr 16, 2008 at 10:24:35PM +0200, Denys Vlasenko wrote:
> > It seems that 4.2.1 was testing "/usr/lib/../x86_64-linux-uclibc/include",
> > i.e. "$libdir/../x86_64-linux-uclibc/include". From the listing above
> > I see them 4.3.0 does not do that anymore - there is no
> > "/../x86_64-linux-uclibc/include"... or maybe there is, in the form of:
> > "xxx/../lib/gcc/x86_64-linux-uclibc/4.3.0/../../../../x86_64-linux-uclibc/include"
> 
> Correct.  A relocated GCC 4.2.1 installation would still search
> various directories in their unrelocated paths.  This was a bug and
> I'm sorry to hear that fixing it broke your setup.  It could cause all
> sorts of problems when you have two versions of GCC installed.

I believe I solved it with --with-sysroot, and then met yet another problem:
4.3.0 tried to link in different crtXXX.o files (those which do not exist
on my system). Will try again and let you know.

> The documented (well, I think it is?) directory being searched here is
> $exec_prefix/$target/include.
> 
> > (Is it necessary to do this "/../../../../" thing?)
> 
> Yes, because that's how the directories are found.

Well, it looks like the path like

"xxx/bin/../lib/gcc/x86_64-linux-uclibc/4.3.0/../../../../x86_64-linux-uclibc/include"

is equivalent to simply "xxx/x86_64-linux-uclibc/include", sans cases
where one of those directories (which we go into only to go out again)
does not exist. Hmm. Maybe symlinks may make it more complex. Oh well.
--
vda

Reply via email to