Linux下 posix_event 錯誤

終端下錯誤提示:

/usr/bin/ld: /tmp/ccCRpPUH.o: in function `boost::asio::detail::posix_event::posix_event()':
main.cpp:(.text._ZN5boost4asio6detail11posix_eventC2Ev[_ZN5boost4asio6detail11posix_eventC5Ev]+0x4d): undefined reference to `pthread_condattr_setclock'
/usr/bin/ld: /tmp/ccCRpPUH.o: in function `boost::asio::detail::posix_thread::~posix_thread()':
main.cpp:(.text._ZN5boost4asio6detail12posix_threadD2Ev[_ZN5boost4asio6detail12posix_threadD5Ev]+0x26): undefined reference to `pthread_detach'
/usr/bin/ld: /tmp/ccCRpPUH.o: in function `boost::asio::detail::posix_thread::join()':
main.cpp:(.text._ZN5boost4asio6detail12posix_thread4joinEv[_ZN5boost4asio6detail12posix_thread4joinEv]+0x2b): undefined reference to `pthread_join'
/usr/bin/ld: /tmp/ccCRpPUH.o: in function `boost::asio::detail::posix_thread::start_thread(boost::asio::detail::posix_thread::func_base*)':
main.cpp:(.text._ZN5boost4asio6detail12posix_thread12start_threadEPNS2_9func_baseE[_ZN5boost4asio6detail12posix_thread12start_threadEPNS2_9func_baseE]+0x3a): undefined reference to `pthread_create'
/usr/bin/ld: /tmp/ccCRpPUH.o: in function `boost::asio::detail::posix_signal_blocker::posix_signal_blocker()':
main.cpp:(.text._ZN5boost4asio6detail20posix_signal_blockerC2Ev[_ZN5boost4asio6detail20posix_signal_blockerC5Ev]+0x64): undefined reference to `pthread_sigmask'
/usr/bin/ld: /tmp/ccCRpPUH.o: in function `boost::asio::detail::posix_signal_blocker::~posix_signal_blocker()':
main.cpp:(.text._ZN5boost4asio6detail20posix_signal_blockerD2Ev[_ZN5boost4asio6detail20posix_signal_blockerD5Ev]+0x2d): undefined reference to `pthread_sigmask'
collect2: error: ld returned 1 exit status

Code::Blocks下錯誤提示

g++  -o bin/Debug/BoostChatServer obj/Debug/main.o   
/usr/bin/ld: obj/Debug/main.o: in function `boost::asio::detail::posix_event::posix_event()':
/usr/local/include/boost/asio/detail/impl/posix_event.ipp:42: undefined reference to `pthread_condattr_setclock'
/usr/bin/ld: obj/Debug/main.o: in function `boost::asio::detail::posix_thread::~posix_thread()':
/usr/local/include/boost/asio/detail/impl/posix_thread.ipp:35: undefined reference to `pthread_detach'
/usr/bin/ld: obj/Debug/main.o: in function `boost::asio::detail::posix_thread::join()':
/usr/local/include/boost/asio/detail/impl/posix_thread.ipp:42: undefined reference to `pthread_join'
/usr/bin/ld: obj/Debug/main.o: in function `boost::asio::detail::posix_thread::start_thread(boost::asio::detail::posix_thread::func_base*)':
/usr/local/include/boost/asio/detail/impl/posix_thread.ipp:59: undefined reference to `pthread_create'
/usr/bin/ld: obj/Debug/main.o: in function `boost::asio::detail::posix_signal_blocker::posix_signal_blocker()':
/usr/local/include/boost/asio/detail/posix_signal_blocker.hpp:43: undefined reference to `pthread_sigmask'
/usr/bin/ld: obj/Debug/main.o: in function `boost::asio::detail::posix_signal_blocker::~posix_signal_blocker()':
/usr/local/include/boost/asio/detail/posix_signal_blocker.hpp:50: undefined reference to `pthread_sigmask'
collect2: error: ld returned 1 exit status
Process terminated with status 1 (0 minute(s), 1 second(s))
7 error(s), 1 warning(s) (0 minute(s), 1 second(s))


解決方案:


終端下

g++ main.cpp -o client -lpthread
添加 -lpthread
在這裏插入圖片描述

QtCreate 下

*.pro 文件添加
LIBS += -lpthread

Code::Blocks下

Project -> Build options -> Linker settings -> Link libraries
添加
-lpthread
在這裏插入圖片描述

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章