cmake介绍

https://cmake.org/cmake/help/v3.18/

我们写好的工程,需要编译,那么就要告诉编译器,怎么编译源码,如何组装,需要加载哪些类库,哪些头文件。

在windows下,我们使用visual studio,很多细节都被隐藏了,实际上最终核心的功能与linux类似,编译一个工程最原始的方式

  • 把最小的模块编译成一个个中间文件或是类库

  • 一层层的编译模块

  • 最后把所有模块编译成一个二进制文件

当我们的工程量比较大的时候,这样一条条的写命令,很明显不实际,我们想到的就是把这些命令放到一个脚本中统一运行。为了这个功能,linux下提出了make,windows下是nmake,还有如果使用qt creator,也会接触到qmake。对于这么多工具,每个标准不一样,写法不一样,有时候写跨平台软件的时候需要额外设置多套编译环境,为了解决这个问题,出现了cmake,cmake写好的文件,可以在不同系统上生成对应的make文件供对应系统的make工具使用。

cmake是一个用于管理编译源码的工具。一开始,cmake是用作生成各种方言的makefile。今天,cmake可以构建主流的编译系统,就像一个忍者一样,一个工程文件,用作IDE,比如Visual Studio和Xcode。

cmake广泛用于C和C++,也可以用作构建其他语言的源码。

大家第一次接触cmake可能有着不同的目的。如果想学习如何构建从网络下载的源码,请阅读用户交互手册。这将会详细介绍如何使用cmake(1)或cmake-gui(1)来选择构建器,还有就是如何完成构建。

使用依赖手册,可以是开发者尝试使用第三方类库。

开发者第一次用cmake在工程中,cmake教程是一个不错的开始。cmake-buildsystem(7)手册的目的就是开发者可以扩展他们的知识,用作维护一个编译系统,并且更加熟悉编译目的,可以被cmake代替。cmake-packages(7)手册表明如何创建一个包,这样可以更好的被第三方以cmake为基础的编译系统使用。

原文地址:https://www.cnblogs.com/studywithallofyou/p/13718748.html