CMake-linux-下基本使用

CMake 官方 Tutorial

介绍

在介绍 CMake 之前, 先了解先其前身 Make.

Make

Make 是一个用于自动化构建软件的工具, 它通过解析 Makefile 文件来执行构建过程.

而 Makefile 则是一个文本文件, 其中包含了定义构建规则, 依赖关系和命令的指令.

Make 的工作原理是基于文件的时间戳. 它通过检查源文件和目标文件的时间戳来确定哪些文件需要重新编译, 并根据规则定义中的命令来执行相应的操作.

一般学习使用的都是 GNU Make, 一般 Linux 系统下都会自带, 构建的命令为:

1
$ make

CMake

CMake 是一个用于构建软件的跨平台工具, 它使用一种称为 CMakeLists.txt 的简单脚本语言来描述构建过程.

但 CMake 可以生成适应不同构建系统 (包括 Make) 所需的构建文件, 而 Make 则是一种具体的构建系统, 可以执行 Makefile 中定义的构建规则.

具体来说, CMake 通过解析 CMakeLists.txt 文件来生成 Makefile 或其他构建系统所需的文件. CMakeLists.txt 中包含了项目的配置, 目标文件, 依赖关系以及构建规则的描述.

因此, CMake 和 Make 可以结合使用, CMake 负责生成适应不同构建系统的构建文件, 而 Make 负责执行实际的构建过程.

构建命令如:

1
$ cmake .

即解析当前目录下的 CMakeLists.txt 文件.

两者对比

CMake 可以跨平台, 提供高级的构建描述语言, 支持多种构建系统, 但学习曲线较高.

Make 对平台有依赖, 不同操作系统上语法和规则可能不同, 但语法简单且易于使用.

安装

在 Archlinux 下为:

1
sudo pacman -S cmake

CMake-linux-下基本使用
http://example.com/2024/04/09/CMake-linux-下基本使用/
作者
Jie
发布于
2024年4月9日
许可协议