CMake не находит boost_thread

#macos #boost #cmake

#macos #повышение #cmake

Вопрос:

Я пытаюсь установить библиотеку OpenGM. Однако при использовании CMake я получаю следующую ошибку:

  CMake Error at /usr/local/share/cmake-3.6/Modules/FindBoost.cmake:1753 (message):
   Unable to find the requested Boost libraries.

   Boost version: 1.62.0

   Boost include path: /usr/local/include

   Could not find the following Boost libraries:

           boost_thread

   Some (but not all) of the required Boost libraries were found.  You may
   need to install these additional Boost libraries.  Alternatively, set
   BOOST_LIBRARYDIR to the directory containing Boost libraries or BOOST_ROOT
   to the location of Boost.
 

Однако, когда я делаю:

 ls -l 
 

в

 /usr/local/include
 

Я получаю следующую строку:

  lrwxr-xr-x   1 Florian  admin   36 13 oct 19:11 boost -> ../Cellar/boost/1.62.0/include/boost
 

это говорит о том, что он выглядит в нужном каталоге.

В:

 /usr/local/lib
 

У меня есть:

 libboost_thread-mt.a            
libboost_thread-mt.dylib
 

Итак, похоже, что библиотека boost_thread действительно существует…

Что касается конфигурации CMake, связанной с Boost, у меня есть:

  Boost_DIR                        Boost_DIR-NOTFOUND                           
 Boost_INCLUDE_DIR                /usr/local/include                           
 Boost_LIBRARY_DIR_DEBUG          /usr/local/lib                               
 Boost_LIBRARY_DIR_RELEASE        /usr/local/lib                               
 Boost_PYTHON_LIBRARY_DEBUG       /usr/local/lib/libboost_python.dylib         
 Boost_PYTHON_LIBRARY_RELEASE     /usr/local/lib/libboost_python.dylib
 

Если это может помочь, я нахожусь под управлением Mac OSX, и Boost был установлен через:

 brew install boost --with-python
brew install boost-python
 

Комментарии:

1. Что может помочь, так это просмотреть ваши файлы CMake

Ответ №1:

Мне удалось справиться с этой ошибкой, установив для флага многопоточности Boost значение ON n CMakeLists.txt .