[CMake] About FindBoost.cmake

Mateusz Loskot mateusz at loskot.net
Tue Oct 30 05:54:29 EDT 2018


On Tue, 30 Oct 2018 at 10:24, Mateusz Loskot <mateusz at loskot.net> wrote:
> On Tue, 30 Oct 2018 at 10:17, Osman Zakir <osmanzakir90 at hotmail.com> wrote:
> >
> > Yes, but this might also be why it can't find more than "some" of the Boost libraries.  It looks for "-d" even though I'm using the "-gd" ones.
>
> How do you know it looks for -d?
> Sorry, but you are not showing any cmake command line,
> any bit of your CMakeLists.txt how you invoke find_package,
> and nothing from output you are getting.
>
> set(Boost_DEBUG ON)
> find_package(Boost 1.68.0 REQUIRED COMPONENTS filesystem)
>
> then, in a sample project
>
> mkdir build
> cd build
> cmake ..
>
> and it looks for -gd
>
> -- [ C:/Program
> Files/CMake/share/cmake-3.12/Modules/FindBoost.cmake:1430 ]
> _boost_MULTITHREADED = -mt
> -- [ C:/Program
> Files/CMake/share/cmake-3.12/Modules/FindBoost.cmake:1506 ]
> _boost_RELEASE_ABI_TAG = -
> -- [ C:/Program
> Files/CMake/share/cmake-3.12/Modules/FindBoost.cmake:1508 ]
> _boost_DEBUG_ABI_TAG = -gd

I've run some test.

I've got Boost (current develop branch) build in stage directory, as
you see it is --layout=versioned

D:\boost.win\stage\lib (develop -> origin)  ls -1 *system*
libboost_filesystem-vc141-mt-gd-x32-1_69.lib
libboost_filesystem-vc141-mt-gd-x64-1_69.lib
libboost_filesystem-vc141-mt-x32-1_69.lib
libboost_filesystem-vc141-mt-x64-1_69.lib
libboost_system-vc141-mt-gd-x32-1_69.lib
libboost_system-vc141-mt-gd-x64-1_69.lib
libboost_system-vc141-mt-x32-1_69.lib
libboost_system-vc141-mt-x64-1_69.lib

In test project D:\_\workshop\test_boost\CMakeLists.txt

set(Boost_ADDITIONAL_VERSIONS 1.69)
set(Boost_USE_STATIC_LIBS ON)
find_package(Boost 1.69.0 REQUIRED COMPONENTS filesystem system)

Then, configure:

D:\_\workshop\test_boost\_build.vs2017 cmake -A x64
-DBOOST_ROOT:PATH=D:\boost.win ..
-- Building for: Visual Studio 15 2017
-- The C compiler identification is MSVC 19.15.26730.0
-- The CXX compiler identification is MSVC 19.15.26730.0
-- Check for working C compiler: C:/Program Files (x86)/Microsoft
Visual Studio/2017/Professional/VC/Tools/MSVC/14.15.26726/bin/Hostx64/x64/cl.exe
-- Check for working C compiler: C:/Program Files (x86)/Microsoft
Visual Studio/2017/Professional/VC/Tools/MSVC/14.15.26726/bin/Hostx64/x64/cl.exe
-- works
...
-- Boost version: 1.69.0
-- Found the following Boost libraries:
--   filesystem
--   system
...

Best regards,
-- 
Mateusz Loskot, http://mateusz.loskot.net


More information about the CMake mailing list