什么是cmake
根据其官网的定义,cmake是一个开源跨平台的,用于构建、测试和打包软件的一个套件工具。与cmake相关的几个概念需要明晰,如GCC,make和makefile。
- GCC:GCC是GNU Compiler Collection(就是GNU编译器套件),也可以简单认为是编译器,它可以编译很多种编程语言(括C、C++、Objective-C、Fortran、Java等等)
- make:make工具可以看成是一个智能的批处理工具,它本身并没有编译和链接的功能,而是用类似于批处理的方式通过调用makefile文件中用户指定的命令来进行编译和链接的。
- makefile,makefile就是GCC命令的集合,make工具就根据makefile中的命令进行编译和链接的
- cmake,当项目非常大时,手写makefile会非常烦碎,而且不同平台makefile也会不同,所以cmake就是可以根据CMakeLists.txt自动生成makefile。
入门实践
我们已经对于cmake有了一个总体上的认识,接下来就通过官方提供的几个例子介绍下如何使用cmake。
构建单个源文件
项目只有一个源文件,结构如下,我们一般会新建一个目录存储cmake运行的产物,这里我新建了一个build目录。
├── CMakeLists.txt
├── build
└── main.cc
main.cc的内容如下
#include <stdio.h>
#include <stdlib.h>
/**
* power - Calculate the power of number.
* @param base: Base value.
* @param exponent: Exponent value.
*
* @return base raised to the

本文介绍了cmake的基本概念和入门实践,包括构建单个源文件、同一目录下多个源文件、多目录多个源文件的构建,以及如何添加自定义编译选项。通过实例详细讲解了如何使用cmake生成makefile,帮助读者理解cmake在项目构建中的作用和使用方法。
最低0.47元/天 解锁文章
619

被折叠的 条评论
为什么被折叠?



