Cmake基础(1)

什么是cmake

众所周知,对于C/C++,不同的IDE的project文件是不同的,VS中叫做vcproject。在linux中make工具叫做makefile,codeblock中叫做cpb。而cmake是一个通用的project组织方式,cmake的项目文件cmakelists.txt可以转成各种IDE所需要的project格式。
随着使用人数的不断增加,不少IDE可以直接支持cmake项目,虽然没有原生的舒服,比如VS和QtCreator等。

cmake写法

cmake的project叫做cmakelists.txt,不能用其他名称,必须完全一致。项目名称是在文件内部定义的,cmake把cmakelists.txt所在路径作为项目路径。他像makefile和qmake一样是一种脚本工具,是逐行执行的,需要手写,不支持可视化配置像VS一样。

cmake基本术语

  • 生成generate也叫做cmake bulid,功能是生成其他IDE的project文件
  • install
    用于将构建产物(包括可执行文件、库、头文件等)安装到指定的目录。在这个过程中,实际上并没有执行 CMakeLists.txt 文件,而是根据在该文件中配置的安装规则将构建产物复制到指定的位置。
    在 CMakeLists.txt 中,你会看到一些与安装相关的命令,比如 install(TARGETS …) 和 install(FILES …)。这些命令指定了在安装过程中应该安装哪些目标(如可执行文件、库)和文件。然后,执行 cmake --install 时,CMake 会根据这些规则将相应的文件复制到安装目录。
  • values
    在 CMake 中,你可以通过 option 命令来声明和设置可选变量。option 允许你定义一个具有两个状态(ON 或 OFF)的开关选项。这通常用于启用或禁用某些特定的功能。在 cmake 命令中使用 -D 选项设置变量。
  • cache file
    CMake 的 CMakeCache.txt 文件是一个非常重要的文件,它存储了 CMake 在配置过程中生成的缓存变量。这个文件包含了你通过 CMake 命令行或 CMake GUI 设置的各种选项和参数,以及 CMake 在配置过程中自动检测的系统信息。
    当你运行 cmake 命令时,CMake 会读取项目中的 CMakeLists.txt 文件,并生成一个 CMakeCache.txt 文件。这个文件保存了在配置时生成的所有缓存变量,包括你在命令行中指定的变量、CMakeLists.txt 文件中设置的变量以及 CMake 自动检测的系统信息。
    一旦 CMakeCache.txt 文件生成,下一次运行 cmake 时,CMake 将首先检查这个文件,而不是重新扫描整个项目。这使得在多次配置相同项目时更加高效。
    有时候,你可能希望将 CMake 缓存文件的内容导出到一个文件中,以便稍后使用。这时就可以使用 --cachefile 选项。

  • toolchain
  • debug mode
    将 CMake 设置为调试模式。在调试模式下,CMake 将输出更多的信息,以帮助诊断问题。
  • trace mode
    将 CMake 设置为追踪(trace)模式。在追踪模式下,CMake 将输出更详细的执行信息,包括每个命令的执行路径和结果。
  • Process script mode
    用于执行指定的 CMake 脚本文件,进入所谓的 “Process script mode”。这个选项允许你执行一些自定义的 CMake 逻辑,而不涉及实际的构建步骤。
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值