Hi All,
I'm attempting an ASAN build of a Chromium-based project on Linux (Ubuntu 18.04 64-bit) at the M94 branch point (master #911515) and I'm getting the below errors [1]. These errors do not reproduce with an ASAN build at the M93 branch point (master #902210). Any suggestions on how to fix them would be welcome.
Thanks,
Marshall
[1] [51527/51531] SOLINK ./libcef.so
FAILED: libcef.so libcef.so.TOC
python3 "../../build/toolchain/gcc_solink_wrapper.py" --readelf="readelf" --nm="../../third_party/llvm-build/Release+Asserts/bin/llvm-nm" --sofile="./libcef.so" --tocfile="./libcef.so.TOC" --output="./libcef.so" -- ../../third_party/llvm-build/Release+Asserts/bin/clang++ -shared -Wl,-soname="libcef.so" -Wl,--version-script=/home/marshall/code/chromium_git/chromium/src/cef/libcef_dll/libcef.lst -fuse-ld=lld -Wl,--build-id -fPIC -Wl,-z,noexecstack -Wl,-z,relro -Wl,-z,now -Wl,--color-diagnostics -Wl,--no-call-graph-profile-sort -m64 -Werror -Wl,-O2 -Wl,--gc-sections -rdynamic -nostdlib++ -fsanitize=address -Wl,-u_sanitizer_options_link_helper -fsanitize=address -o "./libcef.so" @"./libcef.so.rsp"
ld.lld: error: relocation R_X86_64_TPOFF32 against blink::g_thread_specific_ cannot be used with -shared
>>> defined in obj/third_party/blink/renderer/platform/heap/heap/thread_state.o
>>> referenced by thread_state.cc:92 (../../third_party/blink/renderer/platform/heap/v8_wrapper/thread_state.cc:92)
>>> obj/third_party/blink/renderer/platform/heap/heap/thread_state.o:(blink::ThreadState::Current())
ld.lld: error: relocation R_X86_64_TPOFF32 against blink::g_thread_specific_ cannot be used with -shared
>>> defined in obj/third_party/blink/renderer/platform/heap/heap/thread_state.o
>>> referenced by thread_state.cc:155 (../../third_party/blink/renderer/platform/heap/v8_wrapper/thread_state.cc:155)
>>> obj/third_party/blink/renderer/platform/heap/heap/thread_state.o:(blink::ThreadState::ThreadState(v8::Platform*))
clang: error: linker command failed with exit code 1 (use -v to see invocation)
ninja: build stopped: cannot make progress due to previous errors.