________________________________
寄件者: jesse stone
寄件日期: 2023年2月27日 下午 03:15
收件者: admin-reque...@sourceware.org <admin-reque...@sourceware.org>
主旨: bug report

binutils 2.25.1 x86_64 & aarch64 both build pass

binutils after 2.26 cross compile to target aarch64 failed


  1.  my system is ubuntu 16.04 x86_64 and 18.04 x86_64

  1.  build script

CPU_NUM=$(grep -c processor /proc/cpuinfo)
echo "CPU number = "$CPU_NUM

rm -rf /root/binutils-2.39
cd $HOME
export PATH=$PATH:/opt/ivot/aarch64-ca53-linux-gnueabihf-8.4.01/bin
export 
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/ivot/aarch64-ca53-linux-gnueabihf-8.4.01/lib
export AR=aarch64-ca53-linux-gnu-ar
export AS=aarch64-ca53-linux-gnu-as
export CC=aarch64-ca53-linux-gnu-gcc
export CXX=aarch64-ca53-linux-gnu-g++
export LD=aarch64-ca53-linux-gnu-ld

tar -xvf ./binutils-2.39.tar.xz
cd binutils-2.39
./configure --host=x86_64-linux-gnu --target=aarch64-linux-gnu 
--prefix=$HOME/binutils-2.39/build --program-prefix=""
make -j$CPU_NUM && make install


  1.  bug

make[2]: Leaving directory '/root/binutils-2.39/zlib'
make[2]: Entering directory '/root/binutils-2.39/bfd'
Making info in po
make[3]: Entering directory '/root/binutils-2.39/bfd/po'
make[3]: Nothing to be done for 'info'.
make[3]: Leaving directory '/root/binutils-2.39/bfd/po'
make[3]: Entering directory '/root/binutils-2.39/bfd'
make[3]: Circular doc/bfd.stamp <- doc/bfd.texi dependency dropped.
  GEN      doc/aoutx.stamp
/lib/ld-linux-aarch64.so.1: No such file or directory
Makefile:2492: recipe for target 'doc/aoutx.stamp' failed
make[3]: *** [doc/aoutx.stamp] Error 1
make[3]: Leaving directory '/root/binutils-2.39/bfd'
Makefile:1932: recipe for target 'info-recursive' failed
make[2]: *** [info-recursive] Error 1
make[2]: Leaving directory '/root/binutils-2.39/bfd'
Makefile:3057: recipe for target 'all-bfd' failed
make[1]: *** [all-bfd] Error 2
make[1]: Leaving directory '/root/binutils-2.39'
Makefile:1003: recipe for target 'all' failed
make: *** [all] Error 2
root@homelinux:~/binutils-2.39#


  1.  fix method

gedit ~/binutils-2.39/config.guess
~find
x86_64:Linux:*:*)
set_cc_for_build
LIBCABI=$LIBC
if test "$CC_FOR_BUILD" != no_compiler_found; then
    if (echo '#ifdef __ILP32__'; echo IS_X32; echo '#endif') | \
      (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
      grep IS_X32 >/dev/null
    then
      LIBCABI=${LIBC}x32
    fi
fi
GUESS=$UNAME_MACHINE-pc-linux-$LIBCABI
~this all change to
x86_64:Linux:*:*)
GUESS=$UNAME_MACHINE-unknown-linux-$LIBC

after fix now build ok

Reply via email to