Pregunta

Me enfrento a pocos problemas al vincular con las bibliotecas Boost. Estoy tratando de ejecutar programa de temporizador simple

Pero cuando ejecuto el programa que obtiene los errores por debajo

~/boost_1_48_0/boost/asio/detail/impl/posix_tss_ptr.ipp:34: undefined reference to `pthread_key_create'
./timer.o: In function `~posix_tss_ptr': /~/boost_1_48_0/boost/asio/detail/posix_tss_ptr.hpp:48: undefined reference to `pthread_key_delete' 
./timer.o: In function `boost::asio::detail::posix_tss_ptr<boost::asio::detail::call_stack<boost::asio::detail::task_io_service, boost::asio::detail::task_io_service::thread_info>::context>::operator boost::asio::detail::call_stack<boost::asio::detail::task_io_service, boost::asio::detail::task_io_service::thread_info>::context*() const': ~/boost_1_48_0/boost/asio/detail/posix_tss_ptr.hpp:54: undefined reference to `pthread_getspecific'
./timer.o: In function `~posix_tss_ptr': ~/boost_1_48_0/boost/asio/detail/posix_tss_ptr.hpp:48: undefined reference to `pthread_key_delete' collect2: ld returned 1 exit status

He incluido _I ~/boost_1_48_0/ -L ~/boost_1_48_0/stage/lib -lboost-system

¿Algún consejo rápido sobre esto?

¿Fue útil?

Solución

¿Recuerdas especificar -pthread ¿también? De la manzana de GCC:

   -pthread
       Add support for multithreading using the POSIX threads library.
       This option sets flags for both the preprocessor and linker.

Se requiere con código que usa hilos Posix.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top