[llvm] Remember LLVM_ENABLE_LIBCXX setting in installed configuration (PR #139712)
via llvm-commits
llvm-commits at lists.llvm.org
Fri Aug 15 13:38:32 PDT 2025
gulfemsavrun wrote:
We started seeing an lld relocation error in our cross-compiling builder.
```
[2504/2582](23) Linking CXX shared library /b/s/w/ir/x/w/llvm_build/tools/clang/stage2-bins/lib/clang/22/lib/aarch64-unknown-linux-gnu/libclang_rt.ubsan_standalone.so
FAILED: /b/s/w/ir/x/w/llvm_build/tools/clang/stage2-bins/lib/clang/22/lib/aarch64-unknown-linux-gnu/libclang_rt.ubsan_standalone.so
: && /b/s/w/ir/x/w/llvm_build/./bin/clang++ --target=aarch64-unknown-linux-gnu --sysroot=/b/s/w/ir/x/w/cipd/linux -fPIC -resource-dir=/b/s/w/ir/x/w/llvm_build/tools/clang/stage2-bins/./lib/clang/22 --target=aarch64-unknown-linux-gnu -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -fdiagnostics-color -ffunction-sections -fdata-sections -ffile-prefix-map=/b/s/w/ir/x/w/llvm_build/tools/clang/stage2-bins/runtimes/runtimes-aarch64-unknown-linux-gnu-bins=../../../../../../llvm-llvm-project -ffile-prefix-map=/b/s/w/ir/x/w/llvm-llvm-project/= -no-canonical-prefixes -Wall -O2 -g -DNDEBUG -resource-dir=/b/s/w/ir/x/w/llvm_build/tools/clang/stage2-bins/./lib/clang/22 -fuse-ld=lld -stdlib=libc++ -Wl,-z,nodelete -fuse-ld=lld -Wl,--color-diagnostics -nodefaultlibs -Wl,-z,text -nostdlib++ -Wl,--version-script,/b/s/w/ir/x/w/llvm_build/tools/clang/stage2-bins/runtimes/runtimes-aarch64-unknown-linux-gnu-bins/compiler-rt/lib/ubsan/clang_rt.ubsan_standalone-dynamic-aarch64.vers -shared -Wl,-soname,libclang_rt.ubsan_standalone.so -o /b/s/w/ir/x/w/llvm_build/tools/clang/stage2-bins/lib/clang/22/lib/aarch64-unknown-linux-gnu/libclang_rt.ubsan_standalone.so compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_allocator.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_common.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_deadlock_detector1.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_deadlock_detector2.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_errno.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_file.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_flags.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_flag_parser.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_fuchsia.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_haiku.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_libc.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_libignore.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_linux.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_linux_s390.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_mac.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_mutex.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_netbsd.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_platform_limits_freebsd.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_platform_limits_linux.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_platform_limits_netbsd.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_platform_limits_posix.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_platform_limits_solaris.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_posix.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_printf.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_procmaps_common.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_procmaps_bsd.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_procmaps_fuchsia.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_procmaps_haiku.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_procmaps_linux.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_procmaps_mac.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_procmaps_solaris.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_range.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_solaris.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_stoptheworld_fuchsia.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_stoptheworld_mac.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_stoptheworld_win.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_suppressions.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_tls_get_addr.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_thread_arg_retval.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_thread_registry.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_type_traits.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_win.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_win_interception.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.aarch64.dir/sanitizer_termination.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonLibc.aarch64.dir/sanitizer_common_libcdep.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonLibc.aarch64.dir/sanitizer_allocator_checks.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonLibc.aarch64.dir/sanitizer_dl.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonLibc.aarch64.dir/sanitizer_linux_libcdep.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonLibc.aarch64.dir/sanitizer_mac_libcdep.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonLibc.aarch64.dir/sanitizer_posix_libcdep.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonLibc.aarch64.dir/sanitizer_stoptheworld_linux_libcdep.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonLibc.aarch64.dir/sanitizer_stoptheworld_netbsd_libcdep.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonCoverage.aarch64.dir/sancov_flags.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonCoverage.aarch64.dir/sanitizer_coverage_fuchsia.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonCoverage.aarch64.dir/sanitizer_coverage_libcdep_new.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonCoverage.aarch64.dir/sanitizer_coverage_win_sections.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.aarch64.dir/sanitizer_allocator_report.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.aarch64.dir/sanitizer_chained_origin_depot.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.aarch64.dir/sanitizer_stack_store.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.aarch64.dir/sanitizer_stackdepot.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.aarch64.dir/sanitizer_stacktrace.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.aarch64.dir/sanitizer_stacktrace_libcdep.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.aarch64.dir/sanitizer_stacktrace_printer.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.aarch64.dir/sanitizer_stacktrace_sparc.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.aarch64.dir/sanitizer_symbolizer.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.aarch64.dir/sanitizer_symbolizer_libbacktrace.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.aarch64.dir/sanitizer_symbolizer_libcdep.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.aarch64.dir/sanitizer_symbolizer_mac.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.aarch64.dir/sanitizer_symbolizer_markup.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.aarch64.dir/sanitizer_symbolizer_markup_fuchsia.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.aarch64.dir/sanitizer_symbolizer_posix_libcdep.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.aarch64.dir/sanitizer_symbolizer_report.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.aarch64.dir/sanitizer_symbolizer_report_fuchsia.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.aarch64.dir/sanitizer_symbolizer_win.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.aarch64.dir/sanitizer_thread_history.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.aarch64.dir/sanitizer_unwind_linux_libcdep.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.aarch64.dir/sanitizer_unwind_fuchsia.cpp.o compiler-rt/lib/sanitizer_common/CMakeFiles/RTSanitizerCommonSymbolizer.aarch64.dir/sanitizer_unwind_win.cpp.o compiler-rt/lib/ubsan/CMakeFiles/RTUbsan.aarch64.dir/ubsan_diag.cpp.o compiler-rt/lib/ubsan/CMakeFiles/RTUbsan.aarch64.dir/ubsan_init.cpp.o compiler-rt/lib/ubsan/CMakeFiles/RTUbsan.aarch64.dir/ubsan_flags.cpp.o compiler-rt/lib/ubsan/CMakeFiles/RTUbsan.aarch64.dir/ubsan_handlers.cpp.o compiler-rt/lib/ubsan/CMakeFiles/RTUbsan.aarch64.dir/ubsan_monitor.cpp.o compiler-rt/lib/ubsan/CMakeFiles/RTUbsan.aarch64.dir/ubsan_value.cpp.o compiler-rt/lib/ubsan/CMakeFiles/RTUbsan_cxx.aarch64.dir/ubsan_handlers_cxx.cpp.o compiler-rt/lib/ubsan/CMakeFiles/RTUbsan_cxx.aarch64.dir/ubsan_type_hash.cpp.o compiler-rt/lib/ubsan/CMakeFiles/RTUbsan_cxx.aarch64.dir/ubsan_type_hash_itanium.cpp.o compiler-rt/lib/ubsan/CMakeFiles/RTUbsan_cxx.aarch64.dir/ubsan_type_hash_win.cpp.o compiler-rt/lib/ubsan/CMakeFiles/RTUbsan_standalone.aarch64.dir/ubsan_diag_standalone.cpp.o compiler-rt/lib/ubsan/CMakeFiles/RTUbsan_standalone.aarch64.dir/ubsan_init_standalone.cpp.o compiler-rt/lib/ubsan/CMakeFiles/RTUbsan_standalone.aarch64.dir/ubsan_signals_standalone.cpp.o compiler-rt/lib/interception/CMakeFiles/RTInterception.aarch64.dir/interception_aix.cpp.o compiler-rt/lib/interception/CMakeFiles/RTInterception.aarch64.dir/interception_linux.cpp.o compiler-rt/lib/interception/CMakeFiles/RTInterception.aarch64.dir/interception_mac.cpp.o compiler-rt/lib/interception/CMakeFiles/RTInterception.aarch64.dir/interception_win.cpp.o compiler-rt/lib/interception/CMakeFiles/RTInterception.aarch64.dir/interception_type_test.cpp.o compiler-rt/lib/ubsan/CMakeFiles/RTUbsan_dynamic_version_script_dummy.aarch64.dir/dummy.cpp.o /b/s/w/ir/x/w/llvm_build/tools/clang/stage2-bins/lib/aarch64-unknown-linux-gnu/libunwind.a /b/s/w/ir/x/w/llvm_build/tools/clang/stage2-bins/lib/aarch64-unknown-linux-gnu/libc++abi.a -lc -ldl -lrt -lpthread /b/s/w/ir/x/w/llvm_build/tools/clang/stage2-bins/./lib/clang/22/lib/aarch64-unknown-linux-gnu/libclang_rt.builtins.a /b/s/w/ir/x/w/llvm_build/tools/clang/stage2-bins/lib/aarch64-unknown-linux-gnu/libunwind.a -ldl -lc -lpthread && :
ld.lld: error: relocation R_AARCH64_TLSLE_ADD_TPREL_HI12 against __cxxabiv1::(anonymous namespace)::__globals()::eh_globals cannot be used with -shared
>>> defined in /b/s/w/ir/x/w/llvm_build/tools/clang/stage2-bins/lib/aarch64-unknown-linux-gnu/libc++abi.a(cxa_exception_storage.cpp.o)
>>> referenced by cxa_exception_storage.cpp:33 (../../../../../../llvm-llvm-project/libcxxabi/src/cxa_exception_storage.cpp:33)
>>> cxa_exception_storage.cpp.o:(__cxa_get_globals) in archive /b/s/w/ir/x/w/llvm_build/tools/clang/stage2-bins/lib/aarch64-unknown-linux-gnu/libc++abi.a
```
https://logs.chromium.org/logs/fuchsia/buildbucket/cr-buildbucket/8706642902273983073/+/u/clang/build/stdout
https://github.com/llvm/llvm-project/pull/139712
More information about the llvm-commits
mailing list