Ne peut pas spécifier BOOST_ROOT pour cmake

J'ai plusieurs versions de Boost installé (Windows 7/MinGW). J'ai besoin d'utiliser un particulier (1.53.0).

J'ai défini BOOST_ROOT dans le CMakeFiles.txt fichier: SET(BOOST_ROOT C:/boost_1_53_0/), mais je reçois ce message d'erreur:

> cmake .
BOOST_ROOT=C:/boost_1_53_0/
CMake Error at C:/Program Files (x86)/CMake 2.8/share/cmake-2.8/Modules/FindBoost.cmake:1191 (message):
  Unable to find the requested Boost libraries.

  Boost version: 1.48.0

  Boost include path: C:/Boost/include/boost-1_48

  Detected version of Boost is too old.  Requested version was 1.53 (or
  newer).

  The following Boost libraries could not be found:

          boost_filesystem

  No Boost libraries were found.  You may need to set BOOST_LIBRARYDIR to the
  directory containing Boost libraries or BOOST_ROOT to the location of
  Boost.

J'ai également défini BOOST_ROOT comme une variable d'environnement, mais avec le même résultat.

Pourquoi est cmake toujours à la recherche de l'ancienne version?

S'il vous plaît avoir un coup d'oeil : Comment puis-je obtenir cmake pour trouver mon booster l'installation ? stackoverflow.com/questions/3016448/...
Malheureusement j'ai besoin de le construire sur Windows 7.
Essayez d'exécuter cmake . -DBoost_DEBUG=ON pour obtenir plus d'infos à propos de ce que CMake est en train de faire. Si ce n'est pas de trouver une version de boost dans le BOOST_ROOT chemin d'accès spécifié, il va porter sur la recherche dans les dossiers système. La version 1.53 peut ne pas être approprié par exemple, si vous avez compilé stimuler le partage des libs, mais dans votre CMakeLists.txt vous n'avez pas spécifié set(Boost_USE_STATIC_LIBS OFF).
dans mon CMakeLists.txt le fichier que j'ai: SET(Boost_USE_STATIC_LIBS ON) et SET(Boost_USE_STATIC_RUNTIME ON).
C'était juste un exemple de ce qui pourrait aller mal. Ce serait plus facile à déboguer si vous collez la sortie de l'exécution de cmake . -DBoost_DEBUG=ON et également fournir le nom complet de la boost 1.53 bibliothèques (les noms donnent généralement un bon peu d'info au sujet de la façon dont les bibliothèques ont été construites)

OriginalL'auteur Pietro | 2013-06-14