目录

 

1. CMake简介

2. Cmake下载安装

3. CMake样例

4. cmake-gui使用

4. cmake与nmake生成器构建Makefile


1. CMake简介

CMake是一个跨平台的安装(编译)工具,可以用简单的语句来描述所有平台的安装(编译过程),并且输出对应的makefile或者

project文件,能测试编译器所支持的C++特性,类似UNIX下的automake。只是 CMake 的组态档取名为 CmakeLists.txt。Cmake 并

不直接建构出最终的软件,而是产生标准的建构档(如 Unix 的 Makefile 或 Windows Visual C++ 的 projects/workspaces),然后

再以一般的建构方式使用。这使得熟悉某个集成开发环境(IDE)的开发者可以用标准的方式建构他的软件,这种可以使用各平台

的原生建构系统的能力是 CMake 和 SCons 等其他类似系统的区别之处。

官网操作指南

2. Cmake下载安装

1) 下载

官网下载,根据系统环境下载对应的版本,点击这里,获取已经下载好的版本。

2) 安装

双击cmake-3.17.1-win64-x64.msi进行安装,安装路径名建议为英文路径,不要包含中文和空格。

 选择了自动添加环境,安装完后不用手动添加环境,继续下一步完成安装。

3) 检查安装是否成功

管理员cmd窗口执行:cmake -version

 

3. CMake样例

1) 新建一个用来存放工程文件的文件夹HelloWorld

2) 新建一个HelloWorld.cpp,编写如下内容:

#include <iostream>
using namespace std;

int main() {
  cout << "HelloWorld" << endl;
  system("pause");
  return 0;

}

3) 在cpp文件同级目录下新建一个CMakeLists.txt文件,编写如下内容:

cmake_minimum_required (VERSION 2.6)
project (HelloWorld)
add_executable (HelloWorld HelloWorld.cpp)

 说明:

    第1行:cmake需要的最低版本

    第2行:创建了一个名为 HelloWorld 工程,对应生成一个 HelloWorld.sln 。project函数表示创建一个工程

    第3行:添加一个名为 HelloWorld 的可执行程序项目,它的源代码为 HelloWorld.cxx

 

4) 管理员打开cmd窗口,cd到HelloWorld文件夹路径下,执行命令: cmake .

语法:cmake [<options>] (<path-to-source> | <path-to-existing-build>)

5) 使用VS打开sln文件,即可编译、运行、调试

注意:由于项目中还存在其他的解决方案,需将HelloWorld解决方案设为“启动项”之后才能进行调试。

6) 编译工程(默认Debug模式):

语法:cmake --build <dir> [<options>] [-- <build-tool-options>...]

Debug模式: cmake --build .

Release模式:cmake --build . -- /p:Configuration=Release

查看Release目录,执行HelloWorld.exe

 

4. cmake-gui使用

1) 源文件目录,这里build目录手动创建(创建的目的是生成的配置工程都在build目录下,比较清晰):

2) 打开cmake-gui程序,配置目录,

 

3) 点击Configure开始执行配置,选择运行平台,这里我选择的VS2015

4) 点击Finish

5) 点击 Generate,开始生成 VS 项目

 说明:

ALL_BUILD:该目标会导致工程中所有项目被构建,类似 Visual Studio 的 Build All 或者 make 的 make all命令

HelloWorld:项目本身,就是在CMakeLists.txt文件中配置的project(HelloWorld)

ZERO_CHECK:该项目会检查生成工程的 CMake 配置文件( CMakeLists.txt )是否更新,如更新将运行 CMake 重新生成工程文件,如果确信 CMakeLists.txt 不会被更新,或者希望手工运行 CMake 重新生成工程文件,可以在 CMakeLists.txt 配置文件中添加 set(CMAKE_SUPPRESS_REGENERATION FALSE) 命令, ZERO_CHECK 目标将不会生成

6) 编译,点击cmake-gui中下放的 Open Project 按钮或者直接双击 build 目录下的 HelloWorld.sln,即可编译

4. cmake与nmake生成器构建Makefile

1) 源文件目录:

2) 管理员打开cmd窗口,cd到HelloWorld文件夹路径下,执行命令: cmake -G "NMake Makefiles" .

3) 编译,执行命令: nmake

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐