public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c++/101448] New: Use GCC 9.3.0 to build Ceph crimson-osd, linker failed for "relocation truncated to fit" against symbol
@ 2021-07-14 10:42 kevin.zhao at linaro dot org
  2021-07-14 12:52 ` [Bug target/101448] " rguenth at gcc dot gnu.org
                   ` (7 more replies)
  0 siblings, 8 replies; 9+ messages in thread
From: kevin.zhao at linaro dot org @ 2021-07-14 10:42 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101448

            Bug ID: 101448
           Summary: Use GCC 9.3.0 to build Ceph crimson-osd, linker failed
                    for "relocation truncated to fit" against symbol
           Product: gcc
           Version: 9.3.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: kevin.zhao at linaro dot org
  Target Milestone: ---

Use GCC 9.3.0 binutils 2.34 to build Ceph, I experienced relocation truncated
to fit: R_AARCH64_CALL26
This binary after Linking usually around 2G size, I'm not sure if this is
related with the failure.
Btw, build with Clang 10 works well.

This is the regression point:
https://github.com/ceph/ceph/commit/80961c27d1adaa969e9ad3647d2fb9944b77904a#diff-195c71729a932038ce1774c2539247ffb0189fb3a7d10162403b06b26f2fdb54R264

After taking into this line, the Linking failed. The corresponding function in
seastar is:
https://github.com/scylladb/seastar/blob/master/src/core/prometheus.cc#L599

Log:
[462/462] Linking CXX executable bin/crimson-osd
FAILED: bin/crimson-osd
: && /usr/bin/ccache /usr/bin/c++  -g  -rdynamic
src/crimson/osd/CMakeFiles/crimson-osd.dir/backfill_state.cc.o
src/crimson/osd/CMakeFiles/crimson-osd.dir/ec_backend.cc.o
src/crimson/osd/CMakeFiles/crimson-osd.dir/heartbeat.cc.o
src/crimson/osd/CMakeFiles/crimson-osd.dir/main.cc.o
src/crimson/osd/CMakeFiles/crimson-osd.dir/osd.cc.o
src/crimson/osd/CMakeFiles/crimson-osd.dir/osd_meta.cc.o
src/crimson/osd/CMakeFiles/crimson-osd.dir/pg.cc.o
src/crimson/osd/CMakeFiles/crimson-osd.dir/pg_backend.cc.o
src/crimson/osd/CMakeFiles/crimson-osd.dir/pg_meta.cc.o
src/crimson/osd/CMakeFiles/crimson-osd.dir/replicated_backend.cc.o
src/crimson/osd/CMakeFiles/crimson-osd.dir/shard_services.cc.o
src/crimson/osd/CMakeFiles/crimson-osd.dir/object_context.cc.o
src/crimson/osd/CMakeFiles/crimson-osd.dir/ops_executer.cc.o
src/crimson/osd/CMakeFiles/crimson-osd.dir/osd_operation.cc.o
src/crimson/osd/CMakeFiles/crimson-osd.dir/osd_operations/client_request.cc.o
src/crimson/osd/CMakeFiles/crimson-osd.dir/osd_operations/client_request_common.cc.o
src/crimson/osd/CMakeFiles/crimson-osd.dir/osd_operations/compound_peering_request.cc.o
src/crimson/osd/CMakeFiles/crimson-osd.dir/osd_operations/internal_client_request.cc.o
src/crimson/osd/CMakeFiles/crimson-osd.dir/osd_operations/peering_event.cc.o
src/crimson/osd/CMakeFiles/crimson-osd.dir/osd_operations/pg_advance_map.cc.o
src/crimson/osd/CMakeFiles/crimson-osd.dir/osd_operations/replicated_request.cc.o
src/crimson/osd/CMakeFiles/crimson-osd.dir/osd_operations/background_recovery.cc.o
src/crimson/osd/CMakeFiles/crimson-osd.dir/osd_operations/recovery_subrequest.cc.o
src/crimson/osd/CMakeFiles/crimson-osd.dir/pg_recovery.cc.o
src/crimson/osd/CMakeFiles/crimson-osd.dir/recovery_backend.cc.o
src/crimson/osd/CMakeFiles/crimson-osd.dir/replicated_recovery_backend.cc.o
src/crimson/osd/CMakeFiles/crimson-osd.dir/scheduler/scheduler.cc.o
src/crimson/osd/CMakeFiles/crimson-osd.dir/scheduler/mclock_scheduler.cc.o
src/crimson/osd/CMakeFiles/crimson-osd.dir/osdmap_gate.cc.o
src/crimson/osd/CMakeFiles/crimson-osd.dir/pg_map.cc.o
src/crimson/osd/CMakeFiles/crimson-osd.dir/pg_interval_interrupt_condition.cc.o
src/crimson/osd/CMakeFiles/crimson-osd.dir/objclass.cc.o
src/crimson/osd/CMakeFiles/crimson-osd.dir/__/__/objclass/class_api.cc.o
src/crimson/osd/CMakeFiles/crimson-osd.dir/__/__/osd/ClassHandler.cc.o
src/crimson/osd/CMakeFiles/crimson-osd.dir/__/__/osd/osd_op_util.cc.o
src/crimson/osd/CMakeFiles/crimson-osd.dir/__/__/osd/OSDCap.cc.o
src/crimson/osd/CMakeFiles/crimson-osd.dir/__/__/osd/PeeringState.cc.o
src/crimson/osd/CMakeFiles/crimson-osd.dir/__/__/osd/PGPeeringEvent.cc.o
src/crimson/osd/CMakeFiles/crimson-osd.dir/__/__/osd/PGStateUtils.cc.o
src/crimson/osd/CMakeFiles/crimson-osd.dir/__/__/osd/MissingLoc.cc.o
src/crimson/osd/CMakeFiles/crimson-osd.dir/__/__/osd/PGLog.cc.o
src/crimson/osd/CMakeFiles/crimson-osd.dir/__/__/osd/recovery_types.cc.o
src/crimson/osd/CMakeFiles/crimson-osd.dir/__/__/osd/osd_perf_counters.cc.o
src/crimson/osd/CMakeFiles/crimson-osd.dir/watch.cc.o  -o bin/crimson-osd 
-Wl,-rpath,:::::::::::::::::::  lib/libcrimson-admin.a  lib/libcrimson-common.a
 lib/libcrimson-os.a  lib/libcrimson.a  /usr/lib/aarch64-linux-gnu/libfmt.a 
lib/libdmclock.a  lib/libcrimson-cyanstore.a  lib/libcrimson-os.a 
lib/libcrimson-cyanstore.a  lib/libcrimson-alienstore.a  lib/libkv.a 
/usr/lib/aarch64-linux-gnu/libleveldb.so  src/rocksdb/librocksdb.a 
/usr/lib/aarch64-linux-gnu/libsnappy.so  /usr/lib/aarch64-linux-gnu/liblz4.so 
/usr/lib/aarch64-linux-gnu/libz.so  lib/libheap_profiler.a 
lib/libcrimson-alien-common.a  /usr/lib/aarch64-linux-gnu/libblkid.so 
/usr/lib/aarch64-linux-gnu/libudev.so  lib/libblk.a 
/usr/lib/aarch64-linux-gnu/libaio.so  ../src/spdk/build/lib/libspdk_lvol.a 
../src/spdk/build/lib/libspdk_env_dpdk.a  -Wl,--whole-archive
/home/ubuntu/ceph-gcc/ceph/build/src/dpdk/lib/librte_bus_pci.a
/home/ubuntu/ceph-gcc/ceph/build/src/dpdk/lib/librte_eal.a
/home/ubuntu/ceph-gcc/ceph/build/src/dpdk/lib/librte_kvargs.a
/home/ubuntu/ceph-gcc/ceph/build/src/dpdk/lib/librte_mbuf.a
/home/ubuntu/ceph-gcc/ceph/build/src/dpdk/lib/librte_mempool.a
/home/ubuntu/ceph-gcc/ceph/build/src/dpdk/lib/librte_mempool_ring.a
/home/ubuntu/ceph-gcc/ceph/build/src/dpdk/lib/librte_pci.a
/home/ubuntu/ceph-gcc/ceph/build/src/dpdk/lib/librte_ring.a
/home/ubuntu/ceph-gcc/ceph/build/src/dpdk/lib/librte_telemetry.a
-Wl,--no-whole-archive  -Wl,-lnuma -Wl,-lpthread,-ldl  -lrt 
../src/spdk/build/lib/libspdk_sock.a  ../src/spdk/build/lib/libspdk_nvmf.a 
../src/spdk/build/lib/libspdk_bdev.a  ../src/spdk/build/lib/libspdk_nvme.a 
../src/spdk/build/lib/libspdk_conf.a  ../src/spdk/build/lib/libspdk_thread.a 
../src/spdk/build/lib/libspdk_trace.a  ../src/spdk/build/lib/libspdk_notify.a 
../src/spdk/build/lib/libspdk_accel.a 
../src/spdk/build/lib/libspdk_event_accel.a 
../src/spdk/build/lib/libspdk_blob.a  ../src/spdk/build/lib/libspdk_vmd.a 
../src/spdk/build/lib/libspdk_event_vmd.a 
../src/spdk/build/lib/libspdk_event_bdev.a 
../src/spdk/build/lib/libspdk_sock_posix.a 
../src/spdk/build/lib/libspdk_event_sock.a 
../src/spdk/build/lib/libspdk_event.a  ../src/spdk/build/lib/libspdk_rpc.a 
../src/spdk/build/lib/libspdk_jsonrpc.a  ../src/spdk/build/lib/libspdk_json.a 
../src/spdk/build/lib/libspdk_util.a  /usr/lib/aarch64-linux-gnu/libuuid.so 
../src/spdk/build/lib/libspdk_log.a  src/liburing/src/liburing.a 
lib/libcrimson-seastore.a  lib/libcrimson.a  lib/libcrimson-common.a 
lib/libcrc32.a  lib/libarch.a  boost/lib/libboost_iostreams.a 
boost/lib/libboost_regex.a  boost/lib/libboost_random.a  lib/libjson_spirit.a 
lib/libcommon_utf8.a  /usr/lib/aarch64-linux-gnu/libz.so 
/usr/lib/aarch64-linux-gnu/libcrypto.so  lib/libseastar.a 
/usr/lib/aarch64-linux-gnu/libfmt.a  boost/lib/libboost_program_options.a 
boost/lib/libboost_thread.a  boost/lib/libboost_chrono.a 
boost/lib/libboost_system.a  boost/lib/libboost_date_time.a 
boost/lib/libboost_atomic.a  /usr/lib/aarch64-linux-gnu/libcares.so 
/usr/lib/aarch64-linux-gnu/libcryptopp.so  /usr/lib/aarch64-linux-gnu/liblz4.so
 -ldl  /usr/lib/aarch64-linux-gnu/libgnutls.so  -latomic 
/usr/lib/aarch64-linux-gnu/libsctp.so 
/usr/lib/aarch64-linux-gnu/libprotobuf.so  -lrt 
/usr/lib/aarch64-linux-gnu/libyaml-cpp.so  -fsanitize=address 
-fsanitize=undefined  -fno-sanitize=vptr  /usr/lib/aarch64-linux-gnu/libnuma.so
 -lpthread && :
boost/lib/libboost_program_options.a(cmdline.o): in function
`boost::program_options::invalid_syntax::get_template[abi:cxx11](boost::program_options::invalid_syntax::kind_t)':
cmdline.cpp:(.text+0x70): relocation truncated to fit: R_AARCH64_CALL26 against
symbol `strlen' defined in .text section in
/usr/lib/gcc/aarch64-linux-gnu/9/libasan.so
cmdline.cpp:(.text+0xa4): relocation truncated to fit: R_AARCH64_CALL26 against
symbol `memcpy' defined in .text section in
/usr/lib/gcc/aarch64-linux-gnu/9/libasan.so
cmdline.cpp:(.text+0x14c): relocation truncated to fit: R_AARCH64_CALL26
against symbol `__stack_chk_fail@@GLIBC_2.17' defined in .text section in
/lib/aarch64-linux-gnu/libc.so.6
boost/lib/libboost_program_options.a(cmdline.o): in function
`boost::program_options::detail::cmdline::style(int)':
cmdline.cpp:(.text+0x1b0): relocation truncated to fit: R_AARCH64_CALL26
against symbol `strlen' defined in .text section in
/usr/lib/gcc/aarch64-linux-gnu/9/libasan.so
cmdline.cpp:(.text+0x1e4): relocation truncated to fit: R_AARCH64_CALL26
against symbol `memcpy' defined in .text section in
/usr/lib/gcc/aarch64-linux-gnu/9/libasan.so
cmdline.cpp:(.text+0x200): relocation truncated to fit: R_AARCH64_CALL26
against symbol `std::logic_error::logic_error(std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&)@@GLIBCXX_3.4.21' defined
in .text section in /usr/lib/gcc/aarch64-linux-gnu/9/libstdc++.so
cmdline.cpp:(.text+0x214): relocation truncated to fit: R_AARCH64_CALL26
against symbol `__cxa_allocate_exception@@CXXABI_1.3' defined in .text section
in /usr/lib/gcc/aarch64-linux-gnu/9/libstdc++.so
cmdline.cpp:(.text+0x230): relocation truncated to fit: R_AARCH64_CALL26
against symbol `std::logic_error::logic_error(std::logic_error
const&)@@GLIBCXX_3.4.21' defined in .text section in
/usr/lib/gcc/aarch64-linux-gnu/9/libstdc++.so
cmdline.cpp:(.text+0x274): relocation truncated to fit: R_AARCH64_CALL26
against symbol `__cxa_throw' defined in .text section in
/usr/lib/gcc/aarch64-linux-gnu/9/libasan.so
cmdline.cpp:(.text+0x2d4): relocation truncated to fit: R_AARCH64_CALL26
against symbol `__stack_chk_fail@@GLIBC_2.17' defined in .text section in
/lib/aarch64-linux-gnu/libc.so.6
cmdline.cpp:(.text+0x2fc): additional relocation overflows omitted from the
output
collect2: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2021-07-16 11:02 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-07-14 10:42 [Bug c++/101448] New: Use GCC 9.3.0 to build Ceph crimson-osd, linker failed for "relocation truncated to fit" against symbol kevin.zhao at linaro dot org
2021-07-14 12:52 ` [Bug target/101448] " rguenth at gcc dot gnu.org
2021-07-14 14:41 ` [Bug target/101448] Use GCC 9.3.0 to build Ceph crimson-osd on Arm64, linker failed for relocation truncated to fit: R_AARCH64_CALL26 " kevin.zhao at linaro dot org
2021-07-14 15:25 ` rearnsha at gcc dot gnu.org
2021-07-15  9:42 ` xinliang.liu at linaro dot org
2021-07-15 11:12 ` kevin.zhao at linaro dot org
2021-07-15 17:54 ` rearnsha at gcc dot gnu.org
2021-07-16  2:44 ` kevin.zhao at linaro dot org
2021-07-16 11:02 ` rearnsha at gcc dot gnu.org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).