cmake编译工具及CMakeLists.txt的基本使用

这篇笔记记录了cmakeCMakeLists.txt的基本使用。不同于makecmake是一个跨平台的构建系统,cmake允许用户编写CMakeLists.txt来定义编译流程。确保系统已经安装了cmake

工程目录的一般结构如下:

1
2
3
4
5
6
7
8
projectName----build          //build中存放cmake执行后产生的中间文件
|--CMakeLists.txt
|--include
| |--func.h
|
|--src
|--func.cpp
|--main.cpp

对于上述目录结构,编写CMakeLists.txt如下即可

1
2
3
4
cmake_minimum_required(VERSION 3.5)
project(projectName)
set(CMAKE_CXX_STANDARD 11)
add_executable(projectName src/func.cpp src/main.cpp)

编译执行过程如下

1
2
3
4
$ cd build
build$ cmake .. //cmake指向CMakeists.txt所在的目录,生成makefile
build$ make //编译
build$ ./projectName //执行

补充

CMakeLists.txt是通过使用cmake命令生成MakeFile,之后使用make命令编译工程。