mips elf n32 and 64 linker emulparams refactoring

Thiemo Seufer ica2_ts@csv.ica.uni-stuttgart.de
Fri Oct 18 13:38:00 GMT 2002


Alexandre Oliva wrote:
> On Oct 18, 2002, Thiemo Seufer <ica2_ts@csv.ica.uni-stuttgart.de> wrote:
> 
> >> +LIB_PATH=/usr/lib32
> 
> > How will this work in a cross-compile environment?
> 
> It won't.  Typically, the compiler overrides these anyway.

Oh, ok, so this is a missing feature in GLD in general.

> This is
> just meant to overrides the /usr/lib used by default, when the linker
> is invoked directly.

Please note that /lib32:/usr/lib32 is better to find e.g. libc.
(IRIX has symlinks, but other systems probably not).

> >> +. ${srcdir}/emulparams/elf32bmipn32-defs.sh
> 
> > Sidemark: Especially in this context elf32bmipn32-defs.sh is a
> > really weird name.
> 
> Agreed, but note that this was just moved from both of the elf64*.sh
> files.
> 
> >> +ELFSIZE=64
> >> +LIB_PATH=/usr/lib64
> 
> > Same cross-compile problem here. Formerly it was only set for IRIX,
> > now a cross-ld on e.g. i386-linux will look in the wrong place.
> 
> Formerly a cross from i386-linux-gnu to mips-sgi-irix6 would have the
> same problem.  If it wasn't a problem for irix, why would it be a
> problem for mips-linux-gnu?

GLD was/is not regularily in use on IRIX, so I guess cross compilation
therre was only little used if at all.

> Yeah, I agree it's not ideal, but I think it's an improvement over
> what was there.  The only negative effect of this change is that a
> cross compiler may now look for libraries in a location where it won't
> find libraries for the target system.  It will do so after searching
> any directories listed in the command line, so it would have failed
> one way or the other.

Then at least the path should be disabled for cross builds (as in
e.g. elf64ppc.sh) to reduce confusion.


Thiemo



More information about the Binutils mailing list