symbol __cxa_thread_atexit_impl, version GLIBC_2.18 not defined in file libc.so.6 with link time reference
时间: 2024-06-01 13:12:09 浏览: 149
This error message typically occurs when you are trying to link a program or library against a version of the GLIBC library that does not provide the __cxa_thread_atexit_impl symbol with version GLIBC_2.18. This symbol is used for handling thread-specific destruction in C++ programs.
To resolve this issue, you can try one of the following:
1. Upgrade your GLIBC library to version 2.18 or later. You can do this by installing a newer version of your operating system, or by manually installing the library.
2. If upgrading is not possible, you can try linking against a different version of the GLIBC library that provides the required symbol. You can do this by specifying the library path and version number during the linking process.
3. Alternatively, you can try modifying your code to avoid using the __cxa_thread_atexit_impl symbol. This may involve changing your thread-specific destruction code to use a different mechanism, such as std::terminate() or std::exit().
阅读全文