支持CMake

CMake 依然是与 CLion 集成最深的项目模型:

CMake 项目

打开 CMake 项目

无需 额外配置,即可轻松在 CLion 中打开基于 CMake 的项目:

  • 将它指向您的项目源中的根 CMakeLists.txt 文件,或者
  • 将其指向已有的生成文件夹或 CMakeCache.txt 文件(仅适用于 Makefiles 生成器)。

将目录标记为

如果您希望手动将目录标记为库或项目源/头文件,或者剔除部分目录(比如来自 CMake 项目结构的独立性),那么您可以使用将目录标记为功能。 这将影响创建索引(比如您可以删除创建索引的过程中产生的建构目录、二进制文件、日志和生成的数据),以及代码生成、重构和导航。 查看更多详情。

CMake 环境变量补全

检测 CLion

若您需要检测项目中的 CMake 命令是否是从 CLion 运行的(在这种情况下请设置 特别的变量/路径或执行额外脚本),那么请使用 CLION_IDE 环境变量。 为了让您更方便地找到它,CLion 提供了环境变量自动补全功能。

添加/删除文件

添加新文件时,CLion 会建议将其加入 CMake 目标。

删除项目中的文件时,CLion 会删除命令参数中的文件引用,或者在删除后警告可能出现的错误命令。

CMake 项目

导入项目

您也可以导入非 CMake 项目 (File | Import Project...),CLion 可以对此生成 CMakeLists.txt 文件。

CMake 生成器

对 CMake File API 的支持使 CLion 能够使用多个 CMake 生成器。 用户可以选择 NinjaXcodeVisual Studio 等。 在远程模式下并借助 WSL,此功能适用于所有平台。

了解详情

CMake 配置

CMake 配置文件

您可以通过 CMake 配置文件 (Build, Execution, Deployment | CMake) 来管理 CMake 生成目录、CMake 配置类型、CMake 选项和环境变量等等。

从头创建任意数量的 CMake 配置文件,或者复制已有的文件(预先配置完毕)。 将您的项目构建配置存储在新的通用 CMake 预设中,CLion 将自动检测必要的 CMake 预设并将其导入 CMake 配置文件。

在工具栏中的运行配置切换器中或者在 Run (Shift+Alt+F10)/Debug (Shift+Alt+F9) 配置切换器弹出窗口中切换不同的 CMake 配置文件。

CMake 工具窗口和 CMake 缓存

CMake 工具窗口包含 CMake 输出日志,可用来追踪进度和调试 CMake 脚本。

现在,您可以在 Settings | Build, Execution, Deployment | CMake(设置 | 构建、执行、部署 | CMake)下的单个表式 UI 中检查 CMake 缓存变量和更新传递到 CMake 命令的 CMake 选项。

当表处于焦点时,开始输入即可搜索变量或其值。 CLion 还会在 CMake 缓存变量的工具提示中显示简短描述。

CMake 菜单

前往Tools | CMake 查看实用的 CMake 操作:

  • Reload CMake Project 可以用来应用 CMake 的最新改动,并强制 CLion 重新加载项目,从而在编辑器中反应出这种变化(可以 在 Build, Execution, Deployment | CMake 设置中自动重新载入)。
  • 假如您的项目根目录与最顶级 CMakeLists.txt 文件所处的目录 不一致,那么您可以使用 Change Project Root
  • Reset Cache and Reload Project 可以让您在不丢弃所有 IDE 索引和缓存的情况下清理 CMake 缓存。

CMake 智能支持

CMake 注释

在 CMake 中的 Rename

如果您在 CMake 中使用 Rename 重构 Shift+F6 来更改用户符号的名称(比如函数或宏),那么将自动更新所有用法。

CMake 安装

如果您的项目中有任何 CMake 安装目标,那么您可以从 CLion 的 Run 菜单中调用安装。 此时将执行 CMake 安装命令。 另外,您还可以在 CLion 中向任意运行配置中添加安装步骤。

CMake 注释

CMake 注释

CLion 支持 CMake 3 括号参数和代码块注释语法。 要在 CMake 中快速添加 注释,您无需选择,只要把脱字符号放到它上面,然后按下 Ctrl+/ 即可。 要为代码块添加注释,请将其选中并按 Ctrl+Shift+/

CMakeLists.txt 中的代码辅助

CLion 中的 CMake 文件编辑器可以帮助您更轻松地编辑 CMakeLists.txt 文件。 包括:

  • CMake 字体和颜色设置。
  • 在 CMake 中展开和收起各种代码区域的功能。
  • 针对 CMake 命令和变量的代码补全。
  • 针对与 CMake 捆绑的软件包的 find_package 的代码补全。
  • 代码补全中的 CMake 命令文档。
  • CMake 结构视图。
  • 针对 CMake 中已弃用命令的划线高亮显示。
CMake 补全、代码生成和自动操作

CMake 中的代码生成

在 CMake 中创建场景使用的代码或自定义代码结构,或者使用实时模板重复利用它们。 选择预定义模板或创建自己的模板。

要使用模板,请输入它的缩写(同样支持自动补全),然后按 Tab(或您配置的任何非默认键)展开模板。

编辑完成后,将出现一个横幅,显示您可以在哪里手动加载当前项目, 或者在每次编辑时开启自动重新加载。

CMake 中的“快速文档”

CMake 中的“快速文档”

CMake 脚本中现在提供 Quick Documentation(快速文档)弹出窗口。 文档针对标准 CMake 实体显示:

  • 命令
  • 策略
  • 模块
  • 变量
  • 属性

文档始终对当前捆绑的 CMake 版本呈现,暂时不适用于用户定义的实体。

CMake 调试

CMake 调试器

由于 CMake 是一种构建系统的语言,在 CMake 脚本中调查错误和捕获可疑行为有时可能较为困难。 您可以在 CLion 中将 CMake 脚本作为常规代码调试。 设置断点、逐步执行代码并监视 CMake 变量和目标。 了解详情

CMake 分析

CMake 分析

您可以在 CLion 中目视检查为什么重新加载您的 CMake 项目需要很长时间。 从 CMake 3.18 开始,在 CMake 设置中可以启用新的跟踪。 CLion 将帮助您运行跟踪并呈现结果。 了解详情