2015-11-19 2 views
0

Я пытаюсь связать libgetfiles.so с main.cpp. Я побежал следующую команду:undefined ссылка на `boost :: thread

sudo g++ main.cpp -L/ubuntu/test -lgetfiles -L/usr/local/lib/ -lboost_thread

Это дает мне следующее сообщение об ошибке:

/ubuntu/test/libgetfiles.so: undefined reference to'boost::thread::start_thread_noexcept()' /ubuntu/test/libgetfiles.so: undefined reference to 'boost::thread::join_noexcept()' /ubuntu/test/libgetfiles.so: undefined reference to 'boost::system::system_category()' /ubuntu/test/libgetfiles.so: undefined reference to 'boost::system::generic_category()'

Как я могу решить их?

Я попытался удалить и переустановить библиотеки boost. Я также попробовал следующую команду:

g++ main.cpp -L/ubuntu/test -lgetfiles -L/usr/local/lib/ -lboost_thread-mt

Оба из них не работает для меня.

+0

Вы уверены, что у вас есть lib в/usr/local/lib /? –

+3

Вы должны, вероятно, добавить '-lboost_system' в флагов компоновщика. – Zereges

+0

@ Zereges Спасибо Zereges. Это уменьшило boost :: системные ошибки, но у меня все еще есть boost :: thread errors – Namitha

ответ

0

Если вручную собрать и установить импульс (то есть конкретные версии), вы должны проверить, у вас уже нет libboost-все-DEV пакет установлен внутри /USR/Lib. Попробуйте rm /usr/lib/libboost* && rm -r /usr/include/boost, а затем снова создайте.

Смежные вопросы