初见 cmake

初见 cmake

cmake 是自动生成构建系统的一个工具。cmake 本身不是构建系统,它是一个生成构建系统的工具。或者说 cmake 不是一个构建工具,是一个能根据平台生成对应平台构建系统配置的构建工具。

Cmake 构建系统

Unix 平台的最常见的 C/C++ 构建工具 make,根据 Makefile 编译项目。而 cmake 就是写更少的配置,为 C/C++ 项目自动生成 Makefile。

要用 cmake 生成构建系统,必须指定 Source Tree, Build Tree, Generator。

  • Source Tree 是项目源代码文件的顶层目录,这个目录包含 CMakeLists.txt。
  • Build Tree 是构建系统的根目录,包含构建系统的文件和编译链接输出的程序。
  • Generator 是选择生成哪种构建系统。

生成项目的构建系统

cmake 必须指定 Source Tree或者已经存在的 build tree 路径。

cmake [<options>] <path-to-source>
cmake [<options>] <path-to-existing-build>
cmake [<options>] -S <path-to-source> -B <path-to-build>

-B 选项指定 Build Tree, -S 选项指定 Source Tree。

构建 artifacts

生成构建系统后,我们就可以使用生成的原生构建工具来构建项目了。在 build 目录下执行 make 构建项目。

# build project
cmake --build build/
posted @ 2023-04-01 17:51  wngtk  阅读(21)  评论(0编辑  收藏  举报