Vit*_*meo 6 c++ linux linker clang libc++
我正在尝试使用libc ++,libc ++ abi和clang ++ 3.6.0在Arch Linux x64上编译我的项目.
项目编译正确,但无法链接以下错误:
错误:CMakeFiles/main.cpp.o:对符号'__cxa_thread_atexit @@ CXXABI_1.3.7'的未定义引用
/usr/lib/libstdc++.so.6: - 1:错误:添加符号时出错:命令行中缺少DSO
我正在使用-stdlib=libc++ -lc++abi标志进行编译和链接.
我应该链接哪些额外的库?我错过了一面旗帜吗?
为glibc实现链接-lsupc++或提供一个小的包装函数(可能是更好的方法libc++):
extern "C" int __cxa_thread_atexit(void (*func)(), void *obj,
void *dso_symbol) {
int __cxa_thread_atexit_impl(void (*)(), void *, void *);
return __cxa_thread_atexit_impl(func, obj, dso_symbol);
}
Run Code Online (Sandbox Code Playgroud)
值得一提的是,这仅适用于glibc> = 2.18.
| 归档时间: |
|
| 查看次数: |
4278 次 |
| 最近记录: |