Link the static versions of the Boost libraries using CMake

前端 未结 2 1616
醉话见心
醉话见心 2021-01-30 13:44

I\'ve got both the static and the dynamic versions of the boost libraries in /usr/lib. Now I\'d like CMake to prefer the static versions during the linkage of my executable. Wha

相关标签:
2条回答
  • 2021-01-30 14:06

    Here is a full example of CMAKEFILE

    cmake_minimum_required(VERSION 3.15)
    project(your_project)
    set(Boost_USE_STATIC_LIBS   ON)
    find_package(Boost 1.70 COMPONENTS program_options REQUIRED)
    set(CMAKE_CXX_STANDARD 14)   
    add_executable(your_project main.cpp)
    target_link_libraries(rconpp Boost::program_options)
    

    references:

    cmake documents about BOOST

    0 讨论(0)
  • 2021-01-30 14:13

    In your CMakeLists.txt file:

    set(Boost_USE_STATIC_LIBS   ON)
    find_package(Boost REQUIRED ...)
    

    Where I have ..., you optionally put the names of the libraries you want to use, and then target_link_libraries(targetname ${Boost_LIBRARIES}) later below. If you have a fairly recent distribution of CMake, it should work exactly as advertised. I do it exactly this way in my own projects.

    0 讨论(0)
提交回复
热议问题