我想定义系统上可用的最低增强版本。我尝试了以下方法。不幸的是,这不起作用,因为它尝试在系统上仅提供 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 版本?
基于this http://www.mail-archive.com/cmake@cmake.org/msg14988.html看来 FIND_PACKAGE 忽略了SET(BOOST_MIN_VERSION "1.47.0")
相反你可以使用FIND_PACKAGE(Boost 1.47.0 REQUIRED)
或者稍微好一点FIND_PACKAGE(Boost ${BOOST_MIN_VERSION} REQUIRED)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)