cmake-ide 使用教程
1. 项目介绍
cmake-ide 是一个用于在 Emacs 中为 CMake 项目提供 IDE 特性的包。它支持非 CMake 项目,只要生成了编译数据库即可。cmake-ide 通过运行 CMake 获取必要的编译器标志,并将其传递给其他工具,从而实现自动补全和实时语法检查等功能。
主要特性包括:
- 自动为 CMake 项目设置
auto-complete-clang和flycheck等变量。 - 自动在文件保存时重新运行 CMake。
- 支持 Ninja 和 Make 构建,并自动设置编译命令。
- 支持使用
rtags进行定义跳转。
2. 项目快速启动
安装
通过 MELPA 或 MELPA Stable 安装 cmake-ide:
M-x package-install RET cmake-ide
配置
在 ~/.emacs 或 init.el 中添加以下配置:
(require 'rtags) ; 可选,必须安装 rtags
(cmake-ide-setup)
如果设置了 cmake-ide-flags-c 或 cmake-ide-flags-c++,它们将被添加到 ac-clang-flags 和 company-clang-arguments 中。这些变量应包含系统包含路径,例如:
(setq cmake-ide-flags-c++
'("-I/usr/include/c++/4.9.1" "-I/usr/local/include"))
使用
- 设置
cmake-ide-build-dir为项目的构建目录。 - 保存文件时,
cmake-ide会自动重新运行 CMake。 - 使用
cmake-ide-compile编译项目。
3. 应用案例和最佳实践
自动创建构建目录
cmake-ide 可以自动创建构建目录,默认情况下,这些目录会在系统的临时目录中创建,并且名称是临时的。通过设置 cmake-ide-build-pool-use-persistent-naming,可以使用基于项目路径的可重复命名方案,从而重用构建目录。
(setq cmake-ide-build-pool-use-persistent-naming t)
非 CMake 项目
对于非 CMake 项目,可以使用 .dir-locals.el 设置 cmake-ide-project-dir 和 cmake-ide-build-dir 变量:
((nil . ((cmake-ide-build-dir . "/path/to/build/dir")
(cmake-ide-project-dir . "/path/to/project/dir"))))
4. 典型生态项目
cpputils-cmake
cpputils-cmake 是另一个与 CMake 集成的 Emacs 插件,它提供了类似的功能,但更侧重于 C++ 项目的开发。
rtags
rtags 是一个强大的 C/C++ 代码索引工具,cmake-ide 可以与 rtags 集成,提供更强大的代码导航和跳转功能。
flycheck
flycheck 是一个实时语法检查工具,cmake-ide 通过设置编译器标志,使得 flycheck 能够正确地检查 CMake 项目的语法错误。
通过这些工具的集成,cmake-ide 为 Emacs 用户提供了一个功能强大的 C/C++ 开发环境。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考



