У меня проблемы с компиляцией кода asio через проект Visual Studio Linux. Я продолжаю получать следующую ошибку связывания:
Связывание объектов
1> D: \ C ++ \ test_beastboost \ test_beastboost \ obj \ x64 \ Debug \ main.o: ошибка
: В функции boost::asio::detail::posix_event::posix_event()':
1>/usr/local/include/boost/asio/detail/impl/posix_event.ipp(42): error
: undefined reference to
pthread_condattr_setclock '
1> D: \ C ++ \ test_beastboost \ test_beastboost \ obj \ x64 \ Debug \ main.o: ошибка
: В функции boost::asio::detail::posix_thread::~posix_thread()':
1>/usr/local/include/boost/asio/detail/impl/posix_thread.ipp(35):
error : undefined reference to
pthread_detach '
1> D: \ C ++ \ test_beastboost \ test_beastboost \ obj \ x64 \ Debug \ main.o: ошибка
: В функции boost::asio::detail::posix_thread::join()':
1>/usr/local/include/boost/asio/detail/impl/posix_thread.ipp(42):
error : undefined reference to
pthread_join '
1> D: \ C ++ \ test_beastboost \ test_beastboost \ obj \ x64 \ Debug \ main.o: ошибка
: В функции
boost::asio::detail::posix_thread::start_thread(boost::asio::detail::posix_thread::func_base*)': 1>/usr/local/include/boost/asio/detail/impl/posix_thread.ipp(60):
error : undefined reference to
pthread_create»
1> D: \ C ++ \ test_beastboost \ test_beastboost \ obj \ x64 \ Debug \ main.o: ошибка
: В функции
boost::asio::detail::posix_signal_blocker::posix_signal_blocker()':
1>/usr/local/include/boost/asio/detail/posix_signal_blocker.hpp(43):
error : undefined reference to
pthread_sigmask»
1> D: \ C ++ \ test_beastboost \ test_beastboost \ obj \ x64 \ Debug \ main.o: ошибка
: В функции
boost::asio::detail::posix_signal_blocker::~posix_signal_blocker()':
1>/usr/local/include/boost/asio/detail/posix_signal_blocker.hpp(50):
error : undefined reference to
pthread_sigmask»
1> D: \ C ++ \ test_beastboost \ test_beastboost \ obj \ x64 \ Debug \ main.o: ошибка
: В функции std::thread::thread<std::_Bind<void
(*(boost::asio::basic_stream_socket<boost::asio::ip::tcp,
boost::asio::executor>))(boost::asio::basic_stream_socket<boost::asio::ip::tcp,
boost::asio::executor>&)>>(std::_Bind<void
(*(boost::asio::basic_stream_socket<boost::asio::ip::tcp,
boost::asio::executor>))(boost::asio::basic_stream_socket<boost::asio::ip::tcp,
boost::asio::executor>&)>&&)': 1>/usr/include/c++/5/thread(137): error
: undefined reference to
pthread_create '1> collect2: error: ld
возвращен 1 статус выхода
Я скомпилировал boost 1_70, и они находятся в usr / local / include / boost и usr / local / lib.
Для моего компоновщика у меня есть следующее:
-L / usr / local / lib / -lboost_system
Я также пытаюсь добавить -lboost_thread, но в любом случае использую стандартный поток библиотеки ..
есть предложения?
Должен ли я просто перекомпилировать мой буст на Ubuntu.