[CMake] cmake 2.6.4 won't find boost 1.40 on windows

Ingolf Steinbach ingolf.steinbach at googlemail.com
Mon Sep 21 09:12:31 EDT 2009


2009/9/21 Philip Lowman <philip at yhbt.com>:
> Ultimately we can add anything to the search path of FindBoost that makes
> sense.  If you have suggestions, please feel free to submit them (preferably
> with a tested patch) to the bugtracker.

In preparation of this, could you please clarify which file structure
FindBoost expects in the folders rooted at the entries in
_boost_INCLUDE_SEARCH_DIRS?

With Boost 1.40.0 installed via bjam --prefix=C:\Programme\boost, the
following structure is created:
C:\Programme
    +-boost
        +-include
        |   +-boost-1_40
        |       +-boost
        |           +-config.hpp (etc.)
        +-lib
            +-boost_date_time-vc90-mt-1_40.dll (etc.)

This, however, would require the following patch (against 2.6.4).

Ingolf


--- FindBoost.cmake.orig	2009-09-21 14:34:44.000000000 +0200
+++ FindBoost.cmake	2009-09-21 15:01:19.000000000 +0200
@@ -271,7 +271,7 @@
   # The user has not requested an exact version.  Among known
   # versions, find those that are acceptable to the user request.
   set(_Boost_KNOWN_VERSIONS ${Boost_ADDITIONAL_VERSIONS}
-    "1.38.0" "1.38" "1.37.0" "1.37"
+    "1.40.0" "1.40" "1.38.0" "1.38" "1.37.0" "1.37"
     "1.36.1" "1.36.0" "1.36" "1.35.1" "1.35.0" "1.35" "1.34.1" "1.34.0"
     "1.34" "1.33.1" "1.33.0" "1.33")
   set(_boost_TEST_VERSIONS)
@@ -380,7 +380,7 @@
   SET(_boost_INCLUDE_SEARCH_DIRS
     C:/boost/include
     C:/boost
-    "$ENV{ProgramFiles}/boost"
+    "$ENV{ProgramFiles}/boost/include"
     /sw/local/include
   )

@@ -639,7 +639,7 @@
     C:/boost/lib
     C:/boost
     "$ENV{ProgramFiles}/boost/boost_${Boost_MAJOR_VERSION}_${Boost_MINOR_VERSION}_${Boost_SUBMINOR_VERSION}/lib"
-    "$ENV{ProgramFiles}/boost"
+    "$ENV{ProgramFiles}/boost/lib"
     /sw/local/lib
   )
   IF( BOOST_ROOT )


More information about the CMake mailing list