使用 CMake 生成构建环境

CMake 从单个项目定义为几乎任何编译器或 IDE 生成构建环境。以下示例将演示如何将 CMake 文件添加到跨平台的 Hello WorldC++代码中

CMake 文件总是命名为“CMakeLists.txt”,并且应该已经存在于每个项目的根目录中(也可能存在于子目录中)。基本的 CMakeLists.txt 文件如下所示:

cmake_minimum_required(VERSION 2.4)

project(HelloWorld)

add_executable(HelloWorld main.cpp)

看到它住在 Coliru

该文件告诉 CMake 项目名称,期望的文件版本以及生成名为 HelloWorld 的可执行文件的说明,该文件需要 main.cpp

从命令行为已安装的编译器/ IDE 生成构建环境:

> cmake .

构建应用程序:

> cmake --build .

这将为系统生成默认构建环境,具体取决于操作系统和已安装的工具。使用“out-of-source”构建保持源代码不受任何构建工件的影响:

> mkdir build
> cd build
> cmake ..
> cmake --build .

CMake 还可以从前面的示例中抽象出平台 shell 的基本命令:

> cmake -E make_directory build
> cmake -E chdir build cmake .. 
> cmake --build build 

CMake 包括用于许多常见构建工具和 IDE 的生成器 。为 Visual Studio 的 nmake生成 makefile :

> cmake -G "NMake Makefiles" ..
> nmake