bug-binutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug libctf/28545] New: cross compile incorrectly using host libraries i


From: bugs.sourceware at johnthomson dot fastmail.com.au
Subject: [Bug libctf/28545] New: cross compile incorrectly using host libraries in install relink
Date: Thu, 04 Nov 2021 23:52:03 +0000

https://sourceware.org/bugzilla/show_bug.cgi?id=28545

            Bug ID: 28545
           Summary: cross compile incorrectly using host libraries in
                    install relink
           Product: binutils
           Version: 2.37
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: libctf
          Assignee: unassigned at sourceware dot org
          Reporter: bugs.sourceware at johnthomson dot fastmail.com.au
  Target Milestone: ---

I am trying to cross compile an arm OpenWrt target on an x86_64 Arch Linux host
(host Arch Linux binutils package 2.36.1-3).
This worked without issue before OpenWrt switched to binutils 2.37

The issue is seen in install, relink, (cross) compiling openwrt's
package/devel/binutils:
/usr/lib/libiberty.a: error adding symbols: file format not recognized

The issue I am seeing looked very similar to
https://sourceware.org/bugzilla/show_bug.cgi?id=27360
With that fix applied to both the OpenWrt toolchain, and package binutils, 2.37
moves past the above error, and gives this one:

/usr/lib/libz.so: file not recognized: file format not recognized

Is it possible that zlib needs the same kind of fix?

OpenWrt does make some slight patches to binutils:
https://git.openwrt.org/?p=openwrt/openwrt.git;a=tree;f=toolchain/binutils/patches/2.37;h=0b79f8ca1a95eb53cf16d70e4229c90639cb2448;hb=HEAD

Cheers

… trimmed to error
before applying libctf: link against libiberty before linking in libbfd or
libctf-nobfd
 /bin/sh ./libtool   --mode=install
/mnt/pool_ssd/code/openwrt/staging_dir/host/bin/install -c   libctf.la
libctf-nobfd.la
'/mnt/pool_ssd/code/openwrt/build_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/binutils-2.37/ipkg-install/usr/lib'
libtool: install: warning: relinking `libctf.la'
libtool: install: (cd
/mnt/pool_ssd/code/openwrt/build_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/binutils-2.37/libctf;
/bin/sh
/mnt/pool_ssd/code/openwrt/build_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/binutils-2.37/libctf/libtool
 --tag CC --mode=relink arm-openwrt-linux-muslgnueabi-gcc -std=gnu99 -Wall -W
-Wall -Wno-narrowing -Wwrite-strings -Wmissing-format-attribute
-Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -pedantic
-Wno-long-long -I./../zlib -Os -pipe -fno-caller-saves -fno-plt -fhonour-copts
-Wno-error=unused-but-set-variable -Wno-error=unused-result -mfloat-abi=hard
-I/mnt/pool_ssd/code/openwrt/staging_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/usr/lib/libiconv-stub/include
-I/mnt/pool_ssd/code/openwrt/staging_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/usr/lib/libintl-stub/include
-fmacro-prefix-map=/mnt/pool_ssd/code/openwrt/build_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/binutils-2.37=binutils-2.37
-Wformat -Werror=format-security -fstack-protector -D_FORTIFY_SOURCE=1
-Wl,-z,now -Wl,-z,relro -DPIC -fpic -Wno-unused-value -version-info 0:0:0
-Wl,--version-script=./libctf.ver
-L/mnt/pool_ssd/code/openwrt/staging_dir/toolchain-arm_cortex-a7+neon-vfpv4_gcc-11.2.0_musl_eabi/usr/lib
-L/mnt/pool_ssd/code/openwrt/staging_dir/toolchain-arm_cortex-a7+neon-vfpv4_gcc-11.2.0_musl_eabi/lib
-L/mnt/pool_ssd/code/openwrt/staging_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/usr/lib/libiconv-stub/lib
-Wl,-rpath-link=/mnt/pool_ssd/code/openwrt/staging_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/usr/lib/libiconv-stub/lib
-L/mnt/pool_ssd/code/openwrt/staging_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/usr/lib/libintl-stub/lib
-Wl,-rpath-link=/mnt/pool_ssd/code/openwrt/staging_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/usr/lib/libintl-stub/lib
-znow -zrelro -o libctf.la -rpath /usr/lib libctf_la-ctf-archive.lo
libctf_la-ctf-dump.lo libctf_la-ctf-create.lo libctf_la-ctf-decl.lo
libctf_la-ctf-error.lo libctf_la-ctf-hash.lo libctf_la-ctf-labels.lo
libctf_la-ctf-dedup.lo libctf_la-ctf-link.lo libctf_la-ctf-lookup.lo
libctf_la-ctf-open.lo libctf_la-ctf-serialize.lo libctf_la-ctf-sha1.lo
libctf_la-ctf-string.lo libctf_la-ctf-subr.lo libctf_la-ctf-types.lo
libctf_la-ctf-util.lo libctf_la-ctf-qsort_r.lo libctf_la-ctf-open-bfd.lo
../bfd/libbfd.la
-L/mnt/pool_ssd/code/openwrt/build_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/binutils-2.37/libctf/../libiberty/pic
-liberty -L./../zlib -lz -inst-prefix-dir
/mnt/pool_ssd/code/openwrt/build_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/binutils-2.37/ipkg-install)
libtool: relink: arm-openwrt-linux-muslgnueabi-gcc -shared  -fPIC -DPIC 
.libs/libctf_la-ctf-archive.o .libs/libctf_la-ctf-dump.o
.libs/libctf_la-ctf-create.o .libs/libctf_la-ctf-decl.o
.libs/libctf_la-ctf-error.o .libs/libctf_la-ctf-hash.o
.libs/libctf_la-ctf-labels.o .libs/libctf_la-ctf-dedup.o
.libs/libctf_la-ctf-link.o .libs/libctf_la-ctf-lookup.o
.libs/libctf_la-ctf-open.o .libs/libctf_la-ctf-serialize.o
.libs/libctf_la-ctf-sha1.o .libs/libctf_la-ctf-string.o
.libs/libctf_la-ctf-subr.o .libs/libctf_la-ctf-types.o
.libs/libctf_la-ctf-util.o .libs/libctf_la-ctf-qsort_r.o
.libs/libctf_la-ctf-open-bfd.o  
-L/mnt/pool_ssd/code/openwrt/staging_dir/toolchain-arm_cortex-a7+neon-vfpv4_gcc-11.2.0_musl_eabi/usr/lib
-L/mnt/pool_ssd/code/openwrt/staging_dir/toolchain-arm_cortex-a7+neon-vfpv4_gcc-11.2.0_musl_eabi/lib
-L/mnt/pool_ssd/code/openwrt/staging_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/usr/lib/libiconv-stub/lib
-L/mnt/pool_ssd/code/openwrt/staging_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/usr/lib/libintl-stub/lib
-L/mnt/pool_ssd/code/openwrt/build_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/binutils-2.37/ipkg-install/usr/lib
-L/usr/lib -lbfd
-L/mnt/pool_ssd/code/openwrt/build_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/binutils-2.37/bfd/../libiberty/pic
-L/mnt/pool_ssd/code/openwrt/build_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/binutils-2.37/zlib
-L/mnt/pool_ssd/code/openwrt/build_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/binutils-2.37/libctf/../libiberty/pic
-liberty -lz  -mfloat-abi=hard -Wl,-z -Wl,now -Wl,-z -Wl,relro
-Wl,--version-script=./libctf.ver
-Wl,-rpath-link=/mnt/pool_ssd/code/openwrt/staging_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/usr/lib/libiconv-stub/lib
-Wl,-rpath-link=/mnt/pool_ssd/code/openwrt/staging_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/usr/lib/libintl-stub/lib
  -Wl,-soname -Wl,libctf.so.0 -o .libs/libctf.so.0.0.0
/mnt/pool_ssd/code/openwrt/staging_dir/toolchain-arm_cortex-a7+neon-vfpv4_gcc-11.2.0_musl_eabi/lib/gcc/arm-openwrt-linux-muslgnueabi/11.2.0/../../../../arm-openwrt-linux-muslgnueabi/bin/ld:
/usr/lib/libiberty.a: error adding symbols: file format not recognized
collect2: error: ld returned 1 exit status
libtool: install: error: relink `libctf.la' with the above command before
installing it
make[6]: *** [Makefile:561: install-libLTLIBRARIES] Error 1
make[6]: Leaving directory
'/mnt/pool_ssd/code/openwrt/build_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/binutils-2.37/libctf'
make[5]: *** [Makefile:1245: install-am] Error 2
make[5]: Leaving directory
'/mnt/pool_ssd/code/openwrt/build_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/binutils-2.37/libctf'
make[4]: *** [Makefile:10547: install-libctf] Error 2
make[4]: Leaving directory
'/mnt/pool_ssd/code/openwrt/build_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/binutils-2.37'
make[3]: *** [Makefile:2339: install] Error 2
make[3]: Leaving directory
'/mnt/pool_ssd/code/openwrt/build_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/binutils-2.37'
make[2]: *** [Makefile:143:
/mnt/pool_ssd/code/openwrt/build_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/binutils-2.37/.built]
Error 2
make[2]: Leaving directory '/mnt/pool_ssd/code/openwrt/package/devel/binutils'
time: package/devel/binutils/compile#2.31#0.62#2.80
    ERROR: package/devel/binutils failed to build.
make[1]: *** [package/Makefile:116: package/devel/binutils/compile] Error 1
make[1]: Leaving directory '/mnt/pool_ssd/code/openwrt'
make: *** [/mnt/pool_ssd/code/openwrt/include/toplevel.mk:230:
package/devel/binutils/compile] Error 2


After applying fix to 2.37
https://sourceware.org/git/?p=binutils-gdb.git;a=commitdiff;h=7d53105d6ed984aec255fa0eacd0405f3c1bb874

libtool: install: (cd
/mnt/pool_ssd/code/openwrt/build_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/binutils-2.37/libctf;
/bin/sh
/mnt/pool_ssd/code/openwrt/build_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/binutils-2.37/libctf/libtool
 --tag CC --mode=relink arm-openwrt-linux-muslgnueabi-gcc -std=gnu99 -Wall -W
-Wall -Wno-narrowing -Wwrite-strings -Wmissing-format-attribute
-Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -pedantic
-Wno-long-long -I./../zlib -Os -pipe -fno-caller-saves -fno-plt -fhonour-copts
-Wno-error=unused-but-set-variable -Wno-error=unused-result -mfloat-abi=hard
-I/mnt/pool_ssd/code/openwrt/staging_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/usr/lib/libiconv-stub/include
-I/mnt/pool_ssd/code/openwrt/staging_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/usr/lib/libintl-stub/include
-fmacro-prefix-map=/mnt/pool_ssd/code/openwrt/build_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/binutils-2.37=binutils-2.37
-Wformat -Werror=format-security -fstack-protector -D_FORTIFY_SOURCE=1
-Wl,-z,now -Wl,-z,relro -DPIC -fpic -Wno-unused-value -version-info 0:0:0
-Wl,--version-script=./libctf.ver
-L/mnt/pool_ssd/code/openwrt/staging_dir/toolchain-arm_cortex-a7+neon-vfpv4_gcc-11.2.0_musl_eabi/usr/lib
-L/mnt/pool_ssd/code/openwrt/staging_dir/toolchain-arm_cortex-a7+neon-vfpv4_gcc-11.2.0_musl_eabi/lib
-L/mnt/pool_ssd/code/openwrt/staging_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/usr/lib/libiconv-stub/lib
-Wl,-rpath-link=/mnt/pool_ssd/code/openwrt/staging_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/usr/lib/libiconv-stub/lib
-L/mnt/pool_ssd/code/openwrt/staging_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/usr/lib/libintl-stub/lib
-Wl,-rpath-link=/mnt/pool_ssd/code/openwrt/staging_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/usr/lib/libintl-stub/lib
-znow -zrelro -o libctf.la -rpath /usr/lib libctf_la-ctf-archive.lo
libctf_la-ctf-dump.lo libctf_la-ctf-create.lo libctf_la-ctf-decl.lo
libctf_la-ctf-error.lo libctf_la-ctf-hash.lo libctf_la-ctf-labels.lo
libctf_la-ctf-dedup.lo libctf_la-ctf-link.lo libctf_la-ctf-lookup.lo
libctf_la-ctf-open.lo libctf_la-ctf-serialize.lo libctf_la-ctf-sha1.lo
libctf_la-ctf-string.lo libctf_la-ctf-subr.lo libctf_la-ctf-types.lo
libctf_la-ctf-util.lo libctf_la-ctf-qsort_r.lo libctf_la-ctf-open-bfd.lo
-L/mnt/pool_ssd/code/openwrt/build_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/binutils-2.37/libctf/../libiberty/pic
-liberty ../bfd/libbfd.la
-L/mnt/pool_ssd/code/openwrt/build_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/binutils-2.37/libctf/../libiberty/pic
-liberty -L./../zlib -lz -inst-prefix-dir
/mnt/pool_ssd/code/openwrt/build_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/binutils-2.37/ipkg-install)
libtool: relink: arm-openwrt-linux-muslgnueabi-gcc -shared  -fPIC -DPIC 
.libs/libctf_la-ctf-archive.o .libs/libctf_la-ctf-dump.o
.libs/libctf_la-ctf-create.o .libs/libctf_la-ctf-decl.o
.libs/libctf_la-ctf-error.o .libs/libctf_la-ctf-hash.o
.libs/libctf_la-ctf-labels.o .libs/libctf_la-ctf-dedup.o
.libs/libctf_la-ctf-link.o .libs/libctf_la-ctf-lookup.o
.libs/libctf_la-ctf-open.o .libs/libctf_la-ctf-serialize.o
.libs/libctf_la-ctf-sha1.o .libs/libctf_la-ctf-string.o
.libs/libctf_la-ctf-subr.o .libs/libctf_la-ctf-types.o
.libs/libctf_la-ctf-util.o .libs/libctf_la-ctf-qsort_r.o
.libs/libctf_la-ctf-open-bfd.o  
-L/mnt/pool_ssd/code/openwrt/staging_dir/toolchain-arm_cortex-a7+neon-vfpv4_gcc-11.2.0_musl_eabi/usr/lib
-L/mnt/pool_ssd/code/openwrt/staging_dir/toolchain-arm_cortex-a7+neon-vfpv4_gcc-11.2.0_musl_eabi/lib
-L/mnt/pool_ssd/code/openwrt/staging_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/usr/lib/libiconv-stub/lib
-L/mnt/pool_ssd/code/openwrt/staging_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/usr/lib/libintl-stub/lib
-L/mnt/pool_ssd/code/openwrt/build_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/binutils-2.37/libctf/../libiberty/pic
-L/mnt/pool_ssd/code/openwrt/build_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/binutils-2.37/ipkg-install/usr/lib
-L/usr/lib -lbfd
-L/mnt/pool_ssd/code/openwrt/build_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/binutils-2.37/bfd/../libiberty/pic
-L/mnt/pool_ssd/code/openwrt/build_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/binutils-2.37/zlib
-liberty -lz  -mfloat-abi=hard -Wl,-z -Wl,now -Wl,-z -Wl,relro
-Wl,--version-script=./libctf.ver
-Wl,-rpath-link=/mnt/pool_ssd/code/openwrt/staging_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/usr/lib/libiconv-stub/lib
-Wl,-rpath-link=/mnt/pool_ssd/code/openwrt/staging_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/usr/lib/libintl-stub/lib
  -Wl,-soname -Wl,libctf.so.0 -o .libs/libctf.so.0.0.0
/usr/lib/libz.so: file not recognized: file format not recognized
collect2: error: ld returned 1 exit status
libtool: install: error: relink `libctf.la' with the above command before
installing it
make[6]: *** [Makefile:566: install-libLTLIBRARIES] Error 1
make[6]: Leaving directory
'/mnt/pool_ssd/code/openwrt/build_dir/target-arm_cortex-a7+neon-vfpv4_musl_eabi/binutils-2.37/libctf'

-- 
You are receiving this mail because:
You are on the CC list for the bug.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]