比较版本号时,可以用 if (${XXX_VERSION} VERSION_LESS 3.1.0) 判断大小。 find_package 命令指定版本 find_package(OpenCV REQUIRED) 查找名为 OpenCV 的包,不限版本,事后可以通过 ${OpenCV_VERSION} 查询找到的版本。 find_package(OpenCV 2.0.1 REQUIRED) 查找版本在 2.0.1 以上的 OpenCV 包(version ...
#find_package(Qt5 <version> COMPONENTS Core Widgets REQUIRED), version填版本号,如 find_package(Qt5 5.15.0 COMPONENTS Core Widgets REQUIRED) # or find_package(Qt5 5.14.0 COMPONENTS Core Widgets REQUIRED) 可以加入EXACT来精确匹配,当匹配不到时会报错 find_package(Qt5 5.14.0 EXACT COMPONENTS Core...
单一版本号: PACKAGE_FIND_NAME:包名 PACKAGE_FIND_VERSION:全版本字符串 PACKAGE_FIND_VERSION_MAJOR:主版本号,如果未指定则为0 PACKAGE_FIND_VERSION_MINOR:次版本,如果未指定则为0 PACKAGE_FIND_VERSION_PATCH:补丁版本,如果未指定则为0 PACKAGE_FIND_VERSION_TWEAK:小版本,如果未指定则为0 PACKAGE_FIND_VERSION...
实际上,你可能需要查看库的文档来了解如何正确指定版本。 3. 示例代码 由于CMake 原生的 find_package 命令不支持直接指定版本,以下示例将展示如何使用一个假设的 FindBoost.cmake 模块(或 Boost 提供的 boost-config.cmake)来指定 Boost 库的版本。请注意,这只是一个示例,实际使用时你可能需要调整路径和版本号...
如果找到文件Find<PackageName>.cmake,Cmake会读取并处理该文件,简而言之,它负责检查一些条件(如版本号是否满足等)是否满足,并在找到包后,返回给调用者一些变量,用以获取包的详细信息。 一般来说,Find<PackageName>.cmake文件不是随包本身一起提供的,更多的是外部针对已有包的重新包装,例如操作系...
在这个例子中,我们指定了要查找的Boost库的版本号1.71。CMake将仅仅查找与这个版本完全匹配的Boost库。 示例3:查找带有选项组件的PCL库 find_package(PCL REQUIRED COMPONENTS common io) 在这个例子中,我们使用“find_package”指令来查找PCL库,并指定了我们需要的两个组件:"common"和"io"。通过指定“REQUIRED”选项...
[version]版本号major[.minor[.patch[.tweak]]]versionMin...[<]versionMax [EXACT]要求版本完全匹配 [QUIET]禁用信息通知 [MODULE]这个命令采用MODE模式寻找包 [REQUIRED]可以省略,后面接组件名称 [[COMPONENTS] [components...]]组件 [OPTIONAL_COMPONENTS components...]可选组件 ...
如果找到文件Find<PackageName>.cmake,Cmake会读取并处理该文件,简而言之,它负责检查一些条件(如版本号是否满足等)是否满足,并在找到包后,返回给调用者一些变量,用以获取包的详细信息。 一般来说,Find<PackageName>.cmake文件不是随包本身一起提供的,更多的是外部针对已有包的重新包装,例如操作系统、Cmak...
到了CMake时代,CMake给我们提供了find_package() 命令来查找依赖包。理想情况下,一句find_package()命令就可以把一整个依赖包的头文件包含路径、库路径、库名字、版本号等情况都获取到,后续只管用就好了。 二、find_package命令搜包过程 首先我们需要明确一点,CMake本身不提供任何搜索库的便捷方法,所有的搜索库并...
PACKAGE_FIND_VERSION:完整的版本字符串 PACKAGE_FIND_VERSION_MAJOR:主版本号,如果没有指定则为0 PACKAGE_FIND_VERSION_MINOR:次版本号,如果没有指定则为0 PACKAGE_FIND_VERSION_PATCH:补丁版本号,如果没有指定则为0 PACKAGE_FIND_VERSION_TWEAK:调整版本号,如果没有指定则为0 ...