failed to build libunwind when qemuarm64
Does anyone meet this or have any suggestion, please ?
$ bitbake libunwind [snip] | ../aarch64-poky-linux-libtool --tag=CC --mode=link aarch64-poky-linux-gcc --sysroot=/buildarea/lyang1/test_uni/tmp/sysroots/qemuarm64 -O2 -pipe -g -feliminate-unused-debug-types -fexc eptions -Wall -Wsign-compare -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -o test-coredump-unwind test-coredump-unwind.o ../src/libunwind-coredump.la ../src/libunwind-aarch64.la | aarch64-poky-linux-libtool: link: aarch64-poky-linux-gcc --sysroot=/buildarea/lyang1/test_uni/tmp/sysroots/qemuarm64 -O2 -pipe -g -feliminate-unused-debug-types -fexceptions -Wall -Wsign-co mpare -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -o test-ptrace-misc test-ptrace-misc.o ident.o | aarch64-poky-linux-libtool: link: aarch64-poky-linux-gcc --sysroot=/buildarea/lyang1/test_uni/tmp/sysroots/qemuarm64 -O2 -pipe -g -feliminate-unused-debug-types -fexceptions -Wall -Wsign-co mpare -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -o .libs/Lperf-trace Lperf-trace.o ../src/.libs/libunwind.so -lc -lgcc_s | aarch64-poky-linux-libtool: link: aarch64-poky-linux-gcc --sysroot=/buildarea/lyang1/test_uni/tmp/sysroots/qemuarm64 -O2 -pipe -g -feliminate-unused-debug-types -fexceptions -Wall -Wsign-co mpare -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -o .libs/Lperf-simple Lperf-simple.o ../src/.libs/libunwind.so -lc -lgcc_s | /buildarea/lyang1/test_uni/tmp/sysroots/x86_64-linux/usr/libexec/aarch64-poky-linux/gcc/aarch64-poky-linux/4.9.2/ld: copy reloc against protected `_ULaarch64_local_addr_space' is invalid | /buildarea/lyang1/test_uni/tmp/sysroots/x86_64-linux/usr/libexec/aarch64-poky-linux/gcc/aarch64-poky-linux/4.9.2/ld: failed to set dynamic section sizes: Bad value | /buildarea/lyang1/test_uni/tmp/sysroots/x86_64-linux/usr/libexec/aarch64-poky-linux/gcc/aarch64-poky-linux/4.9.2/ld: copy reloc against protected `_ULaarch64_local_addr_space' is invalid | /buildarea/lyang1/test_uni/tmp/sysroots/x86_64-linux/usr/libexec/aarch64-poky-linux/gcc/aarch64-poky-linux/4.9.2/ld: failed to set dynamic section sizes: Bad value | aarch64-poky-linux-libtool: link: aarch64-poky-linux-gcc --sysroot=/buildarea/lyang1/test_uni/tmp/sysroots/qemuarm64 -O2 -pipe -g -feliminate-unused-debug-types -fexceptions -Wall -Wsign-co mpare -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -o .libs/Gperf-trace Gperf-trace.o ../src/.libs/libunwind-aarch64.so /buildarea/lyang1/test_uni/tmp/work/aarch64-poky-linux/libunwind/1.1-r0/build/src/.libs/libunwind.so ../src/.libs/libunwind.so -lc -lgcc_s | collect2: error: ld returned 1 exit status | make[1]: *** [Lperf-trace] Error 1 | make[1]: *** Waiting for unfinished jobs.... | aarch64-poky-linux-libtool: link: aarch64-poky-linux-gcc --sysroot=/buildarea/lyang1/test_uni/tmp/sysroots/qemuarm64 -O2 -pipe -g -feliminate-unused-debug-types -fexceptions -Wall -Wsign-compare -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -o .libs/Gperf-simple Gperf-simple.o ../src/.libs/libunwind-aarch64.so /buildarea/lyang1/test_uni/tmp/work/aarch64-poky-linux/libunwind/1.1-r0/build/src/.libs/libunwind.so ../src/.libs/libunwind.so -lc -lgcc_s | collect2: error: ld returned 1 exit status | make[1]: *** [Lperf-simple] Error 1 | /buildarea/lyang1/test_uni/tmp/sysroots/x86_64-linux/usr/libexec/aarch64-poky-linux/gcc/aarch64-poky-linux/4.9.2/ld: copy reloc against protected `_Uaarch64_local_addr_space' is invalid | /buildarea/lyang1/test_uni/tmp/sysroots/x86_64-linux/usr/libexec/aarch64-poky-linux/gcc/aarch64-poky-linux/4.9.2/ld: failed to set dynamic section sizes: Bad value | /buildarea/lyang1/test_uni/tmp/sysroots/x86_64-linux/usr/libexec/aarch64-poky-linux/gcc/aarch64-poky-linux/4.9.2/ld: copy reloc against protected `_Uaarch64_local_addr_space' is invalid | /buildarea/lyang1/test_uni/tmp/sysroots/x86_64-linux/usr/libexec/aarch64-poky-linux/gcc/aarch64-poky-linux/4.9.2/ld: failed to set dynamic section sizes: Bad value | collect2: error: ld returned 1 exit status | make[1]: *** [Gperf-trace] Error 1 | collect2: error: ld returned 1 exit status | make[1]: *** [Gperf-simple] Error 1 | aarch64-poky-linux-libtool: link: aarch64-poky-linux-gcc --sysroot=/buildarea/lyang1/test_uni/tmp/sysroots/qemuarm64 -O2 -pipe -g -feliminate-unused-debug-types -fexceptions -Wall -Wsign-compare -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -o .libs/test-coredump-unwind test-coredump-unwind.o ../src/.libs/libunwind-coredump.so ../src/.libs/libunwind-aarch64.so /buildarea/lyang1/test_uni/tmp/work/aarch64-poky-linux/libunwind/1.1-r0/build/src/.libs/libunwind.so -lgcc_s -lc | /buildarea/lyang1/test_uni/tmp/sysroots/x86_64-linux/usr/libexec/aarch64-poky-linux/gcc/aarch64-poky-linux/4.9.2/ld: copy reloc against protected `_UCD_accessors' is invalid | /buildarea/lyang1/test_uni/tmp/sysroots/x86_64-linux/usr/libexec/aarch64-poky-linux/gcc/aarch64-poky-linux/4.9.2/ld: failed to set dynamic section sizes: Bad value | collect2: error: ld returned 1 exit status [snip]
Signature · 3 lines
Thanks Robert
Refer to RP's fix will fix the problem:
commit 6cd8c8d7466cdf29e7a94ebd4978b129da4455fa
Author: Richard Purdie <[email protected]> Date: Tue Apr 7 15:53:04 2015 +0100
libunwind: Build with gold to avoid build failures
I will send a patch for it.
// Robert
Quoted 90 lines · Robert Yang
Does anyone meet this or have any suggestion, please ?
$ bitbake libunwind [snip] | ../aarch64-poky-linux-libtool --tag=CC --mode=link aarch64-poky-linux-gcc --sysroot=/buildarea/lyang1/test_uni/tmp/sysroots/qemuarm64 -O2 -pipe -g -feliminate-unused-debug-types -fexc eptions -Wall -Wsign-compare -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -o test-coredump-unwind test-coredump-unwind.o ../src/libunwind-coredump.la ../src/libunwind-aarch64.la | aarch64-poky-linux-libtool: link: aarch64-poky-linux-gcc --sysroot=/buildarea/lyang1/test_uni/tmp/sysroots/qemuarm64 -O2 -pipe -g -feliminate-unused-debug-types -fexceptions -Wall -Wsign-co mpare -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -o test-ptrace-misc test-ptrace-misc.o ident.o | aarch64-poky-linux-libtool: link: aarch64-poky-linux-gcc --sysroot=/buildarea/lyang1/test_uni/tmp/sysroots/qemuarm64 -O2 -pipe -g -feliminate-unused-debug-types -fexceptions -Wall -Wsign-co mpare -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -o .libs/Lperf-trace Lperf-trace.o ../src/.libs/libunwind.so -lc -lgcc_s | aarch64-poky-linux-libtool: link: aarch64-poky-linux-gcc --sysroot=/buildarea/lyang1/test_uni/tmp/sysroots/qemuarm64 -O2 -pipe -g -feliminate-unused-debug-types -fexceptions -Wall -Wsign-co mpare -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -o .libs/Lperf-simple Lperf-simple.o ../src/.libs/libunwind.so -lc -lgcc_s | /buildarea/lyang1/test_uni/tmp/sysroots/x86_64-linux/usr/libexec/aarch64-poky-linux/gcc/aarch64-poky-linux/4.9.2/ld: copy reloc against protected `_ULaarch64_local_addr_space' is invalid | /buildarea/lyang1/test_uni/tmp/sysroots/x86_64-linux/usr/libexec/aarch64-poky-linux/gcc/aarch64-poky-linux/4.9.2/ld: failed to set dynamic section sizes: Bad value | /buildarea/lyang1/test_uni/tmp/sysroots/x86_64-linux/usr/libexec/aarch64-poky-linux/gcc/aarch64-poky-linux/4.9.2/ld: copy reloc against protected `_ULaarch64_local_addr_space' is invalid | /buildarea/lyang1/test_uni/tmp/sysroots/x86_64-linux/usr/libexec/aarch64-poky-linux/gcc/aarch64-poky-linux/4.9.2/ld: failed to set dynamic section sizes: Bad value | aarch64-poky-linux-libtool: link: aarch64-poky-linux-gcc --sysroot=/buildarea/lyang1/test_uni/tmp/sysroots/qemuarm64 -O2 -pipe -g -feliminate-unused-debug-types -fexceptions -Wall -Wsign-co mpare -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -o .libs/Gperf-trace Gperf-trace.o ../src/.libs/libunwind-aarch64.so /buildarea/lyang1/test_uni/tmp/work/aarch64-poky-linux/libunwind/1.1-r0/build/src/.libs/libunwind.so ../src/.libs/libunwind.so -lc -lgcc_s | collect2: error: ld returned 1 exit status | make[1]: *** [Lperf-trace] Error 1 | make[1]: *** Waiting for unfinished jobs.... | aarch64-poky-linux-libtool: link: aarch64-poky-linux-gcc --sysroot=/buildarea/lyang1/test_uni/tmp/sysroots/qemuarm64 -O2 -pipe -g(quoted diff) +0
-2-feliminate-unused-debug-types -fexceptions -Wall -Wsign-compare -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -o .libs/Gperf-simple Gperf-simple.o../src/.libs/libunwind-aarch64.so /buildarea/lyang1/test_uni/tmp/work/aarch64-poky-linux/libunwind/1.1-r0/build/src/.libs/libunwind.so ../src/.libs/libunwind.so -lc -lgcc_s
| collect2: error: ld returned 1 exit status | make[1]: *** [Lperf-simple] Error 1 |/buildarea/lyang1/test_uni/tmp/sysroots/x86_64-linux/usr/libexec/aarch64-poky-linux/gcc/aarch64-poky-linux/4.9.2/ld:
copy reloc against protected `_Uaarch64_local_addr_space' is invalid
| /buildarea/lyang1/test_uni/tmp/sysroots/x86_64-linux/usr/libexec/aarch64-poky-linux/gcc/aarch64-poky-linux/4.9.2/ld:
failed to set dynamic section sizes: Bad value
| /buildarea/lyang1/test_uni/tmp/sysroots/x86_64-linux/usr/libexec/aarch64-poky-linux/gcc/aarch64-poky-linux/4.9.2/ld:
copy reloc against protected `_Uaarch64_local_addr_space' is invalid
| /buildarea/lyang1/test_uni/tmp/sysroots/x86_64-linux/usr/libexec/aarch64-poky-linux/gcc/aarch64-poky-linux/4.9.2/ld:
failed to set dynamic section sizes: Bad value| collect2: error: ld returned 1 exit status | make[1]: *** [Gperf-trace] Error 1 | collect2: error: ld returned 1 exit status | make[1]: *** [Gperf-simple] Error 1 | aarch64-poky-linux-libtool: link: aarch64-poky-linux-gcc--sysroot=/buildarea/lyang1/test_uni/tmp/sysroots/qemuarm64 -O2 -pipe -g
(quoted diff) +0
-2-feliminate-unused-debug-types -fexceptions -Wall -Wsign-compare -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -o .libs/test-coredump-unwindtest-coredump-unwind.o ../src/.libs/libunwind-coredump.so
../src/.libs/libunwind-aarch64.so /buildarea/lyang1/test_uni/tmp/work/aarch64-poky-linux/libunwind/1.1-r0/build/src/.libs/libunwind.so -lgcc_s -lc
| /buildarea/lyang1/test_uni/tmp/sysroots/x86_64-linux/usr/libexec/aarch64-poky-linux/gcc/aarch64-poky-linux/4.9.2/ld:
copy reloc against protected `_UCD_accessors' is invalid
| /buildarea/lyang1/test_uni/tmp/sysroots/x86_64-linux/usr/libexec/aarch64-poky-linux/gcc/aarch64-poky-linux/4.9.2/ld:
failed to set dynamic section sizes: Bad value
| collect2: error: ld returned 1 exit status
[snip]
Quoted 8 lines · Robert Yang
| /buildarea/lyang1/test_uni/tmp/sysroots/x86_64-linux/usr/libexec/aarch64-poky-linux/gcc/aarch64-poky-linux/4.9.2/ld: copy reloc against protected `_Uaarch64_local_addr_space' is invalid | /buildarea/lyang1/test_uni/tmp/sysroots/x86_64-linux/usr/libexec/aarch64-poky-linux/gcc/aarch64-poky-linux/4.9.2/ld: failed to set dynamic section sizes: Bad value | /buildarea/lyang1/test_uni/tmp/sysroots/x86_64-linux/usr/libexec/aarch64-poky-linux/gcc/aarch64-poky-linux/4.9.2/ld: copy reloc against protected `_Uaarch64_local_addr_space' is invalid | /buildarea/lyang1/test_uni/tmp/sysroots/x86_64-linux/usr/libexec/aarch64-poky-linux/gcc/aarch64-poky-linux/4.9.2/ld: failed to set dynamic section sizes: Bad value | collect2: error: ld returned 1 exit status
these copy relocations are probably not supported by ld on aarch64