linux使用boost的进程库爆出5EiPKc]+0x23):对‘boost::system::system_category()’未定义的引用 collect2: error: ld return

在linux中编译并安装好boost后使用boost_thread 库是报出一下错误

g++ -o text2 text2.cpp -lboost_system -lboost_thread
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/libboost_thread.a(thread.o):在函数‘boost::detail::get_current_thread_data()’中:
thread.cpp:(.text+0x13d):对‘pthread_key_create’未定义的引用
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/libboost_thread.a(thread.o):在函数‘boost::detail::set_current_thread_data(boost::detail::thread_data_base*)’中:
thread.cpp:(.text+0x17d):对‘pthread_key_create’未定义的引用
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/libboost_thread.a(thread.o):在函数‘boost::thread::start_thread_noexcept()’中:
thread.cpp:(.text+0x1f3):对‘pthread_create’未定义的引用
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/libboost_thread.a(thread.o):在函数‘boost::thread::start_thread_noexcept(boost::thread_attributes const&)’中:
thread.cpp:(.text+0x2c0):对‘pthread_create’未定义的引用
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/libboost_thread.a(thread.o):在函数‘boost::detail::make_external_thread_data()’中:
thread.cpp:(.text+0xef2):对‘pthread_key_create’未定义的引用
thread.cpp:(.text+0xf0a):对‘pthread_setspecific’未定义的引用
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/libboost_thread.a(thread.o):在函数‘boost::thread::detach()’中:
thread.cpp:(.text+0x1326):对‘pthread_detach’未定义的引用
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/libboost_thread.a(thread.o):在函数‘thread_proxy’中:
thread.cpp:(.text+0x1751):对‘pthread_setspecific’未定义的引用
thread.cpp:(.text+0x178f):对‘pthread_setspecific’未定义的引用
thread.cpp:(.text+0x182b):对‘pthread_key_create’未定义的引用
thread.cpp:(.text+0x184b):对‘pthread_key_create’未定义的引用
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/libboost_thread.a(thread.o):在函数‘boost::thread::join_noexcept()’中:
thread.cpp:(.text+0x1dbc):对‘pthread_join’未定义的引用
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/libboost_thread.a(thread.o):在函数‘boost::thread::do_try_join_until_noexcept(timespec const&, bool&)’中:
thread.cpp:(.text+0x1fbc):对‘pthread_join’未定义的引用
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/libboost_thread.a(thread.o):在函数‘boost::this_thread::hiden::sleep_until(timespec const&)’中:
thread.cpp:(.text+0x21d1):对‘pthread_getspecific’未定义的引用
thread.cpp:(.text+0x2353):对‘pthread_getspecific’未定义的引用
thread.cpp:(.text+0x23db):对‘pthread_key_create’未定义的引用
thread.cpp:(.text+0x23fb):对‘pthread_key_create’未定义的引用
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/libboost_thread.a(thread.o):在函数‘boost::this_thread::hiden::sleep_for(timespec const&)’中:
thread.cpp:(.text+0x2a6f):对‘pthread_getspecific’未定义的引用
thread.cpp:(.text+0x2aeb):对‘pthread_key_create’未定义的引用
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/libboost_thread.a(thread.o):在函数‘boost::detail::get_current_thread_data()’中:
thread.cpp:(.text+0x156):对‘pthread_getspecific’未定义的引用
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/libboost_thread.a(thread.o):在函数‘boost::detail::set_current_thread_data(boost::detail::thread_data_base*)’中:
thread.cpp:(.text+0x196):对‘pthread_setspecific’未定义的引用
collect2: error: ld returned 1 exit status

其原因是因为一些附件依赖的库没有连接上
可以试试一下编译

 g++ -o text2 text2.cpp  -lboost_system -lboost_thread -lpthread

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值