-
Notifications
You must be signed in to change notification settings - Fork 4.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
1.14.1 unresolvable R_X86_64_TPOFF32 relocation #3221
Comments
It doesn't look like the spdlog symbol, maybe you should ask the question in the GCC or Ubuntu community. |
Maybe duplicate #1405 |
once_callable is likely a thread_local related symbol, which glibc uses. The error shows that this happens in async.cpp, which includes a bunch of spdlog related files.
|
As far as I know, the |
Your linked stackoverflow is saying the same thing as I am. As long as the end result is a dynamic library (either directly, or by first creating a static library which is then linked into a dynamic library),
However, I am not creating a shared library anywhere in my workflow. I make a static library and link it directly into an executable. Therefore, I use I have bisected the problem to 6725584e27ca93f50527165696d7cf34e3978373. And specifically, the call to
On top of that, unfortunately, gcc has had a pretty bad bug with The options I see are as follows:
|
Thanks for the accurate investigation. |
Sure, I'll take a stab when I have some free time. It would likely be a backwards incompatible change though. Or should I put in a |
Personally, I think it is a bug and should be fixed even if it is not compatible. |
Updating spdlog to 1.14.1, I get the following linker error:
This doesn't happen with 1.13.0, or when
ftls-model=local-exec
is removed from the compiler flags.Compiler: gcc 12.3.0
Linux: Ubuntu Jammy
cxxflags:
-O2 -std=c++20 -fpie -fstack-protector-strong -fcf-protection -fstack-clash-protection -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=3 -D_GLIBCXX_ASSERTIONS -D_LIBCPP_HARDENING_MODE=_LIBCPP_HARDENING_MODE_FAST -ftls-model=local-exec
linkflags:
-ggdb -O3 -DNDEBUG -pie -Wl,-z,nodlopen -Wl,-z,noexecstack -Wl,-z,relro -Wl,-z,now -Wl,--as-needed -Wl,--no-copy-dt-needed-entries
The text was updated successfully, but these errors were encountered: