Cmake 命令 cmake_minimum_required
最编程
2024-03-25 19:18:38
...
举例说明
1. 假设当前的cmake版本为3.10.2
>cmake --version
cmake version 3.10.2
CMake suite maintained and supported by Kitware (kitware.com/cmake).
示1.1:指定了min
,且比当前cmake版本低
# CMakeLists.txt文件
cmake_minimum_required (VERSION 2.8.0)
# 执行结果
>cmake .
-- Configuring done
-- Generating done
-- Build files have been written to:XXXXXX
示例1.2:指定了min
,且比当前的cmake版本高
# CMakeLists.txt 文件
cmake_minimum_required (VERSION 3.12.0)
# 执行结果
>cmake .
CMake Error at CMakeLists.txt:1 (cmake_minimum_required):
CMake 3.12.0 or higher is required. You are running version 3.10.2
-- Configuring incomplete, errors occurred!
示例1.3:指定了min
,也指定了max
,实际上由于当前环境的cmake版本低于3.12,因此...max
是会被忽略的
# CMakeLists.txt 文件
cmake_minimum_required (VERSION 3.10.0...3.12.0)
# 执行结果
>cmake .
-- Configuring done
-- Generating done
-- Build files have been written to:XXXXXX
2. 假设当前的cmake版本为3.18.2
>cmake --version
cmake version 3.18.2
CMake suite maintained and supported by Kitware (kitware.com/cmake).
当只指定min
的时候,结果和示例1.1、示例1.2一致。如果同时也指定了max
,有如下几种情况:
示2.1:指定了max
,且比min
版本低
# CMakeLists.txt文件
cmake_minimum_required (VERSION 3.12.2...3.10.2)
# 执行结果,会提示错误
>cmake .
CMake Error at CMakeLists.txt:1 (cmake_minimum_required):
Policy VERSION range "3.12.2...3.10.2" specifies a larger minimum than
maximum.
示2.2:指定了max
,高于min
且比当前运行的cmake版本高
# CMakeLists.txt文件
cmake_minimum_required (VERSION 3.12.2...3.19.2)
# 执行结果
>cmake .
-- Configuring done
-- Generating done
-- Build files have been written to:XXXXXX
示2.3:指定了max
,高于min
且比当前运行的cmake版本低
# CMakeLists.txt文件
cmake_minimum_required (VERSION 3.12.2...3.16.2)
# 执行结果
>cmake .
-- Configuring done
-- Generating done
-- Build files have been written to:XXXXXX
推荐阅读
-
使用 pip update 命令和清华镜像快速安装 OpenCV-python
-
介绍 SQL(数据库查询语言)和基本命令 [查看数据库/数据表、创建数据库/数据表、使用数据库/数据表、删除数据库/数据表、如何进行注释
-
关闭系统蜂鸣器 -----arch/centOS-# rmmod pcspkr --off # modprobe pcspk --on 将该命令添加到系统启动配置文件中,它将永久生效。
-
Centerm 瘦客户机 C92 闪烁 BIOS fpt 命令无法识别瘦客户机系统
-
请谨慎使用这些 Linux 命令!
-
第 2 章 文件和目录操作命令
-
使用 git 命令和 vscode 从零开始从远程代码库中拉取、提交、合并和推送分支,并在项目中进行练习
-
Stata 新命令快讯:有向无环图、模糊乘法等!
-
postgresql 高可用性 etcd + patroni 的五个命令--etcd 的部分操作命令
-
etcd 锁定机制和 redis etcd 命令。