J'ai eu le même problème en essayant de courir make
pour un projet après avoir installé la version 1.66.0 de Boost sur Ubuntu Trusty64. Le message d'erreur était similaire (pas exactement comme) celui-ci:
CMake Error at
/usr/local/Cellar/cmake/3.3.2/share/cmake/Modules/FindBoost.cmake:1245 (message):
Unable to find the requested Boost libraries.
Boost version: 0.0.0
Boost include path: /usr/include
Detected version of Boost is too old. Requested version was 1.36 (or newer).
Call Stack (most recent call first):
CMakeLists.txt:10 (FIND_PACKAGE)
Boost était définitivement installé, mais CMake ne pouvait pas le détecter. Après avoir passé beaucoup de temps à bricoler des chemins et des variables environnementales, j'ai fini par vérifier moi- cmake
même les options et j'ai trouvé ce qui suit:
--check-system-vars = Find problems with variable usage in system files
J'ai donc exécuté ce qui suit dans le répertoire en question:
sudo cmake --check-system-vars
qui a renvoyé:
Also check system files when warning about unused and uninitialized variables.
-- Boost version: 1.66.0
-- Found the following Boost libraries:
-- system
-- filesystem
-- thread
-- date_time
-- chrono
-- regex
-- serialization
-- program_options
-- Found Git: /usr/bin/git
-- Configuring done
-- Generating done
-- Build files have been written to: /home/user/myproject
et résolu le problème.
Boost_INCLUDE_DIR
et d'autres utilisent l'indicateurBoost_INCLUDEDIR
( sans le trait de soulignement ). Vous pouvez vérifier le bon pour votre cas en lisant leFindBoost.cmake
fichier, souspath-to-cmake/Modules/FindBoost.cmake