在cmake中设置boost的最小版本

Set minimum version of boost in cmake

本文关键字:版本 boost cmake 设置      更新时间:2023-10-16

我想定义系统上可用的最小boost版本。我尝试了以下方法。不幸的是,这不起作用,因为它试图在系统上仅使用boost 1.40.0进行编译。

SET(Boost_USE_STATIC_LIBS OFF)
SET(Boost_USE_MULTITHREAD OFF)
SET(BOOST_MIN_VERSION "1.47.0")
FIND_PACKAGE(Boost REQUIRED)
FIND_PACKAGE(Boost REQUIRED)
if (NOT Boost_FOUND)
      message(FATAL_ERROR "Fatal error: Boost (version >= 1.47.0) required.n")
endif (NOT Boost_FOUND)
INCLUDE_DIRECTORIES(${Boost_INCLUDE_DIRS})
LINK_DIRECTORIES(${Boost_LIBRARY_DIRS})

在编译之前,我如何得到cmake来控制正确的boost版本?

基于此,FIND_PACKAGE似乎忽略了SET(BOOST_MIN_VERSION "1.47.0"),而您可以使用FIND_PACKAGE(Boost 1.47.0 REQUIRED)或稍微更好的FIND_PACKAGE(Boost ${BOOST_MIN_VERSION} REQUIRED)