Я установил 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. Однако после этого я все равно получаю такую же ошибку.
Есть ли у кого-нибудь другие предложения о том, что может быть проблемой здесь? Спасибо.
У вас есть Cmake> = 3.7? cf http://stackoverflow.com/q/42123509/2799037 – usr1234567
Да, у меня версия CMake 2.8.12.2. Хорошая мысль. – sealonging314
В этом проблема! – usr1234567