[CMake] How to include Boost in Visual Studio cmake project
Mike Jackson
mike.jackson at bluequartz.net
Wed Nov 11 21:02:11 EST 2009
Usually when I build Boost on Windows I use the
--prefix=C:\Path\To\Boost and the "install" target instead of the
stage target.
Then I set BOOST_ROOT to what ever I set the --prefix argument to.
That seems to always work.
And to try this out you will need a clean RobWork build directory. So,
to sum up, try rebuilding boost by including the --prefix=C:\.... and
"install" arguments to bjam.
Then remove everything from your RobWork build directory and then
reconfigure RobWork using cmake.
_________________________________________________________
Mike Jackson mike.jackson at bluequartz.net
BlueQuartz Software www.bluequartz.net
Principal Software Engineer Dayton, Ohio
On Wed, Nov 11, 2009 at 7:41 PM, Martin Peter Christiansen
<martin.p.christiansen at gmail.com> wrote:
> For the last day or so I have tried to compile a project(RobWork) for Visual
> Studio 2008 using Cmake.
>
> But my problem is that Cmake claims i can't find Boost dependencies.
>
>
>
> I have been googling the problem on the net, but the only answer I could
> find was that FindBost.cmake was the problem, but not how to solve it.
>
>
>
> When i run the project (RobWork) i get the following error:
>
>
>
> C:\Documents and Settings\Martin>cd
> c:\local\workspace\RobWork\build\release
>
> C:\local\workspace\RobWork\build\release>cmake -G "Visual Studio 9 2008"
> -DCMAKE_BUILD_TYPE=Release
> ../..
> -- RobWork version 0.4.0
> -- Build configuration: Release
> CMake Warning (dev) at CMakeLists.txt:20 (INCLUDE):
> Policy CMP0011 is not set: Included scripts do automatic cmake_policy PUSH
> and POP. Run "cmake --help-policy CMP0011" for policy details. Use the
> cmake_policy command to set the policy and suppress this warning.
>
> The included script
>
> C:/local/workspace/RobWork/build/ProjectSetup.cmake
>
> affects policy settings. CMake is implying the NO_POLICY_SCOPE option for
> compatibility, so the effects are applied to the including context.
> This warning is for project developers. Use -Wno-dev to suppress it.
>
> -- RobWork ROOT dir: C:/local/workspace/RobWork
> CMake Error at C:/Programmer/CMake
> 2.8/share/cmake-2.8/Modules/FindBoost.cmake:879 (message):
> Unable to find the requested Boost libraries.
>
> Boost version: 1.39.0
>
> Boost include path: C:/local/boost_1_39_0
>
> The following Boost libraries could not be found:
>
> boost_thread
>
> 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.
> Call Stack (most recent call first):
> build/depends.cmake:8 (FIND_PACKAGE)
> build/RobWorkSetup.cmake:32 (INCLUDE)
> CMakeLists.txt:36 (INCLUDE)
>
>
>
> - I have successfully compiled Boost 1.39.0 to Visual studio 2008, so i get
> lib files like "libboost_date_time-vc90-mt-1_39.lib" in
> <boost-root>/stage/lib.
>
>
>
> - Boost have been placed in “C:\local\boost_1_39_0”
>
>
>
> - The following environment variables has been added to Windows BOOST_ROOT =
> C:\local\boost_1_39_0 and BOOST_LIBRARYDIR = $BOOST_ROOT\stage\lib
>
>
>
> - Both Cmake 2.6 and 2.8r2 have been used to compile the project, with no
> success.
>
>
>
>
>
> What I need is a solution, which can help me compile this project using
> Visual Studio 2008
>
> Is there some way I can setup FindBoost.cmake, so it will accept and boost
> correctly????
>
>
>
> Regards
>
>
>
> Martin Peter Christiansen
>
>
>
> _______________________________________________
> Powered by www.kitware.com
>
> Visit other Kitware open-source projects at
> http://www.kitware.com/opensource/opensource.html
>
> Please keep messages on-topic and check the CMake FAQ at:
> http://www.cmake.org/Wiki/CMake_FAQ
>
> Follow this link to subscribe/unsubscribe:
> http://www.cmake.org/mailman/listinfo/cmake
>
More information about the CMake
mailing list