2017-02-17 33 views
0

Я установил Boost 1.63.0 локально, а также Caffe (версия rc3). В настоящее время я пытаюсь скомпилировать Caffe код с помощью CMake, но я получаю следующее сообщение об ошибке компоновщика:Неопределенный справочник по теме увеличения при компиляции кода Caffe

/home/local/boost_1_63_0/boost/thread/pthread/once_atomic.hpp:145: 
undefined reference to `boost::thread_detail::enter_once_region(boost::once_flag&)' 

/home/local/boost_1_63_0/boost/thread/pthread/once_atomic.hpp:157: 
undefined reference to `boost::thread_detail::commit_once_region(boost::once_flag&)' 

/home/local/boost_1_63_0/boost/thread/pthread/once_atomic.hpp:153: 
undefined reference to `boost::thread_detail::rollback_once_region(boost::once_flag&)' 

libcpp_stuff_library.a(Log.cpp.o): In function `logging::get_log()': 
/home/local/boost_1_63_0/boost/thread/pthread/once_atomic.hpp:145: 
undefined reference to `boost::thread_detail::enter_once_region(boost::once_flag&)' 

/home/local/boost_1_63_0/boost/thread/pthread/once_atomic.hpp:157: 
undefined reference to `boost::thread_detail::commit_once_region(boost::once_flag&)' 

/home/local/boost_1_63_0/boost/thread/pthread/once_atomic.hpp:153: 
undefined reference to `boost::thread_detail::rollback_once_region(boost::once_flag&)' 

collect2: error: ld returned 1 exit status 

Моя первая мысль, что я каким-то образом ссылки на Повысьте неправильный путь в моем файле CMake. Прямо сейчас, в CMakeLists.txt, у меня есть:

set(BOOST_ROOT "/home/local/boost_1_63_0") 
find_package(Boost 1.6.3 REQUIRED COMPONENTS filesystem system thread) 

Моя вторая мысль была, что это было что-то делать с Pthreads, так что я связан с Pthreads в моем CMakeLists.txt используя этот StackOverflow ответ: cmake and libpthread. Однако после этого я все равно получаю такую ​​же ошибку.

Есть ли у кого-нибудь другие предложения о том, что может быть проблемой здесь? Спасибо.

+0

У вас есть Cmake> = 3.7? cf http://stackoverflow.com/q/42123509/2799037 – usr1234567

+0

Да, у меня версия CMake 2.8.12.2. Хорошая мысль. – sealonging314

+0

В этом проблема! – usr1234567

ответ

0

При компиляции Caffe с использованием локально установленного кода Boost 1.63 с исходным кодом с CMake 3.7, у меня возникли аналогичные проблемы. Папка Caffe 1.0CMake содержит Dependencies.cmake и Caffe ищет Boost 1.45 не Boost 1.62 или Boost 1.63 и Python 3.5.3Ubuntu 17.04 дистрибутивных файлов Launchpad. Локально установленный файл libboost_python.so или libboost_python.so.1.63.0 в папке /usr/local/lib по-разному называются из файлов распространения пусковой панели в папке /usr/lib/x86_64-linux-gnulibboost_python-py35.so.

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

  • Нет связанных вопросов^_^