cmake_minimum_required

要求cmake的最小版本。

cmake_minimum_required(VERSION <min>[...<policy_max>] [FATAL_ERROR])

3.12版新增:可选的< policy_max >版本。

设置项目所需的cmake的最低版本。还将按照下面的说明更新策略设置

< min>和可选的< policy_max>都是major.minor[.patch[.]形式的CMake版本。

如果CMake的运行版本低于所需要的版本,它将停止处理项目并报告一个错误。如果指定了可选的版本,则必须至少是< min>版本,并影响策略设置,如策略设置中所述。

该命令将CMAKE_MINIMUM_REQUIRED_VERSION变量的值设置为< min>。

CMake 2.6及更高版本接受但忽略致命错误选项。应该指定它,以便CMake 2.4及更低版本失败时出现错误,而不仅仅是警告。

注意:

  • 在顶级CMakeLists.txt文件的开头调用cmake_minimum_required()命令,甚至在调用project()命令之前。
  • 在调用其他可能影响其行为的命令之前,建立版本和策略设置是很重要的。请参见策略CMP0000。
  • 在function()中调用cmake_minimum_required()会限制调用时对函数作用域的某些影响。通常不建议在函数内调用cmake_minimum_required()。

设置策略

cmake_minimum_required(VERSION)命令隐式调用cmake_policy(VERSION)命令,以指定为给定范围的cmake版本编写当前项目代码。

当指定了大于2.4的版本时,该命令会隐式调用

cmake_policy(VERSION <min>[...<max>])

它根据指定的版本范围设置CMake策略。当给出 2.4版本或更低版本时,该命令会隐式调用

cmake_policy(VERSION 2.4[...<max>])

支持CMake 2.4及更低版本的兼容性特性。

cmake:cmake_minimum_required命令相关推荐

  1. 【使用CMake组织C++工程】2:CMake 常用命令和变量

    前言 前面的文章介绍了一个最简单的CMake工程,这篇文章将介绍一个稍微复杂一些的CMake工程,结合这个工程总结一下在组织一个C/C++工程时最为常用的一些CMake命令和变量.对于涉及到的命令和变 ...

  2. CMake常用命令整理

    CMake常用命令整理 转自:https://zhuanlan.zhihu.com/p/315768216 CMake 是什么我就不用再多说什么了,相信大家都有接触才会看一篇文章.对于不太熟悉的开发人 ...

  3. CMake 常用命令和变量

    前言 前面的文章介绍了一个最简单的CMake工程,这篇文章将介绍一个稍微复杂一些的CMake工程,结合这个工程总结一下在组织一个C/C++工程时最为常用的一些CMake命令和变量.对于涉及到的命令和变 ...

  4. CMake | include_guard命令详解

    目录 一.命令详解 二.简单使用 1.CMakeLists.txt 2.cmake/custom.cmake 3.配置 三.为低于3.10的版本自定义"包含保护"机制 1.cmak ...

  5. CMake常用命令(五)add_executable命令 生成可执行文件

    文章目录 语法 作用 举例 1. 普通可执行目标文件 语法 作用 参数 举例 1. 基础用法 2. EXCLUDE_FROM_ALL参数用法 2. 导入可执行目标文件 语法 作用 参数 举例 3. 别 ...

  6. CMake——cmake_minimum_required

    命令简介 cmake_minimum_required用于设定cmake的最低版本. cmake_minimum_required(VERSION <min>[...<policy_ ...

  7. CMake常用命令总结

    1.首先用cmake_minimum_required (VERSION 3.14.1)指定所需cmake的最小版本. 2.project(name CXX C)指定工程名称,这个会影响PROJECT ...

  8. CMake configure_file命令

    cmake configure_file在编写比较复杂的工程构建时经常用到,通常时将一个输入文件input 拷贝到指定位置并生成output,简单命令格式为: configure_file(input ...

  9. cmake:命令行工具cmake

    概要 Generate a Project Buildsystemcmake [<options>] <path-to-source>cmake [<options> ...

  10. cmake通过命令行构建静态库/动态库

    指定编译为动态库 -DBUILD_SHARED_LIBS=true 指定编译位置 -DCMAKE_INSTALL_PREFIX=/home

最新文章

  1. 融云任杰:强互动,RTC 下一个“爆点”场景 | 拟合
  2. thinkpad alert键一直处于按着的状态
  3. AD管理之三,企业根CA的安装
  4. expect spawn、linux expect 用法
  5. 我为什么逃离无人车公司
  6. dataloader 源码_带你从零掌握迭代器及构建最简DataLoader
  7. [转]四边形不等式优化dp(POJ1160)
  8. 程序架构--BS,CS
  9. Ajax请求数据与删除数据后刷新页面
  10. endnote无法同步原因_endnote不能同步(endnote retrieving references)的解决方法
  11. inner/left/right/full join on
  12. UGUI的Button和Toggle
  13. Beta冲刺随笔汇总
  14. 超详细Anaconda安装教程
  15. win10很多软件显示模糊_Win7系统和Win10系统你会怎么选?
  16. 源自神话的写作要义之英雄之旅
  17. 最小的 中文 linux,麻雀虽小五脏俱全 最小Linux系统试用
  18. 图解弗洛伊德算法(每一对顶点之间的最短路径问题)
  19. 李白 三五七言·秋风词
  20. 作业:摄氏度转化为华摄氏度

热门文章

  1. 非接触IC卡读写模块MFRC530的工作原理及其应用
  2. Redis使用pipeline批量查询所有键值对以及multiGet用法
  3. Python函数调用的九大方法,鲜为人知
  4. [模板] 球 体积交 体积并
  5. AutoCAD .NET 二次开发实例(2) 批量统计指定图层线段长度
  6. android6.0原生brower_六款顶级Android手机原生浏览器决战
  7. 使用微信提供的云开发实现后端 微信小程序云开发的内容管理CMS
  8. python输出dat格式_输出dat文件
  9. Latex输出大小写罗马数字
  10. Mac如何清理应用软件