[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Binutils 2.21: ld: ABI is incompatible with that of the selected emulati
From: |
Christophe Jarry |
Subject: |
Binutils 2.21: ld: ABI is incompatible with that of the selected emulation |
Date: |
Mon, 30 May 2011 21:42:36 +0200 |
Dear developers,
I tried to build GCC 4.6.0 and it failed. The error seems to come from
Binutils so I post here. Here is what I did.
Under gNewSense metad (a freed version of Debian Lenny), I first built
binutils 2.21 as follows:
cd binutils-build
CC="gcc -B/usr/bin/" ../binutils-2.20/configure \
--prefix=/tools --disable-nls --disable-werror
make
make install
make -C ld clean
make -C ld LIB_PATH=/tools/lib
cp -v ld/ld-new /tools/bin
cd ..
rm -rf binutils-2.21
rm -rf binutils-build
I ran some tests:
`type ld` gave me "ld is /tools/bin/ld".
All went well, so I tried to build GCC 4.6.0 (with GMP 5.0.2, MPFR
3.0.1 and MPC 0.8.2):
cd gcc-build
CC="gcc -B/usr/bin/" ../gcc-4.6.O/configure --prefix=/tools \
--disable-nls --disable-multilib --enable-shared \
--enable-languages=c
make bootstrap
After about 5 hours on Loongson 2F (Lemote Yeeloong), I encounter the
following error message:
/tools/mips64el-unknown-linux-gnu/bin/ld: skipping incompatible
/usr/lib/libc.so when searching for -lc
/tools/mips64el-unknown-linux-gnu/bin/ld: /usr/lib/crti.o: ABI is
incompatible with that of the selected emulation
/tools/mips64el-unknown-linux-gnu/bin/ld: failed to merge target
specific data of file /usr/lib/crti.o
[snip]
/tools/mips64el-unknown-linux-gnu/bin/ld: BFD (GNU Binutils) 2.21
assertion fail ../../binutils-2.21/bfd/elfxx-mips.c:3161
/tools/mips64el-unknown-linux-gnu/bin/ld: not enough GOT space for
local GOT entries
/tools/mips64el-unknown-linux-gnu/bin/ld: BFD (GNU Binutils) 2.21
internal error, aborting at ../../binutils-2.21/bfd/
elfxx-mips.c line 9224 in _bfd_mips_elf_relocate_section
/tools/mips64el-unknown-linux-gnu/bin/ld: Please report this bug.
collect2: ld returned 1 exit status
make[3]: *** [libgcc_s.so] Error 1
make[3]: Leaving directory `/opt/mygnulinux/build/gcc-build/
mips64el-unknown-linux-gnu/libgcc'
make[2]: *** [all-stage1-target-libgcc] Error 2
make[2]: Leaving directory `/opt/mygnulinux/build/gcc-build'
make[1]: *** [stage1-bubble] Error 2
make[1]: Leaving directory `/opt/mygnulinux/build/gcc-build'
make: *** [bootstrap] Error 2
FYI, my .bashrc:
set +h
umask 022
SYSDIR=/opt/mygnulinux
LC_ALL=POSIX
PATH=/tools/bin:/bin:/usr/bin
DOWNLOADDIR=${SYSDIR}/sources
BUILDDIR=${SYSDIR}/build
MABI="n32"
BUILD_MABI="-mabi=${MABI}"
PS1='\[\e[32m\]\t\[\e[00m\]:\[\e[32m\]\W\[\e[00m\]\$ '
export SYSDIR LC_ALL PATH DOWNLOADDIR BUILDDIR MABI BUILD_MABI
export PS1
My .bash_profile:
exec env -i HOME=${HOME} TERM=${TERM} PS1=${PS1} /bin/bash
System's GCC is 4.4.5.
Where did I go wrong?
Thanks for your help,
Christophe
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- Binutils 2.21: ld: ABI is incompatible with that of the selected emulation,
Christophe Jarry <=