When I build and install cross-binutils (on Debian 2.2) like this:
tar -xzf binutils-2.11.2.tar.gz
mkdir mipsel-binutils
cd mipsel-binutils
../binutils-2.11.2/configure --target=mipsel-linux \
--prefix=/usr/mipsel-linux
make
make install
it seems the resulting mipsel-linux-ld wants to look in:
/usr/mipsel-linux/mipsel-linux/lib
for crt1.o, crti.o, libc.*, etc.
However, a cross-built glibc like:
tar -xzf glibc-2.2.3
cd glibc-2.2.3
patch -p1 -i../elf32-tradlittlemips.diff
tar -xzf ../glibc-linuxthreads-2.2.3.tar.gz
cd ..
mkdir mipsel-glibc
cd mipsel-glibc
../glibc-2.2.3/configure --build=i686-linux \
--host=mipsel-linux --prefix=/usr/mipsel-linux \
--with-headers=/usr/mipsel-linux/include --enable-add-ons
make
make install
puts it's stuff in:
/usr/mipsel-linux/lib/
not:
/usr/mipsel-linux/mipsel-linux/lib/
My first suspicion is that --prefix=/usr/mipsel-linux for binutils
is naive, but --prefix=/usr looks like a disaster (would overwrite
native stuff like libbfd.la for example, whatever that is).
Another odd thing is that binutils installs:
/usr/mipsel-linux/bin/mipsel-linux-ld
and an identical copy at:
/usr/mipsel-linux/mipsel-linux/bin/ld
This seems like a Clue. If fact, the whole
/usr/mipsel-linux/mipsel-linux thing seems off to me. Only, being
only an RTN (Reluctant Toolchain Neophyte), that's about as far as
I've gotten with it.
Analysis (of the software, not me)? :-)
Regards,
Brad
|