学习Cmake

什么是Cmake?

大家都知道C系列的程序都需要进行编译才能运行,而在不同的系统它需要将源文件编译成不同的可执行文件;
你或许也听过好几种 Make 工具,例如 GNU Make ,QT 的 qmake ,微软的 MS nmake,BSD Make(pmake),Makepp等等。
这些 Make 工具遵循着不同的规范和标准,所执行的 Makefile 格式也千差万别。这样就带来了一个严峻的问题:如果软件想跨平台,必须要保证能够在不同平台编译。
而如果使用上面的 Make 工具,就得为每一种标准写一次 Makefile ,这将是一件让人抓狂的工作。

CMake 就是针对上面问题所设计的工具:它首先允许开发者编写一种平台无关的 CMakeList.txt 文件来定制整个编译流程,然后再根据目标用户的平台进一步生成所需的本地化 Makefile 和工程文件,如 Unix 的 Makefile 或 Windows 的 Visual Studio 工程。从而做到“Write once, run everywhere”。
可以说Cmake就是一个根据大家公认的与平台无关的编译规范而诞生的编译工具。

Cmake所做的工作

作为 C/C++ 生态构建系统事实标准的 CMake 其实是一个构建系统生成器

CMake 的主要功能是描述项目结构,表达模块依赖,从而以人类友好的方式表达构建过程步骤编排的需求,最终从声明式的 CMake 代码中生成实际的构建系统,比如生成一系列 GNU Make 构建需要的文件。

我们要配置的工作

我们的任务就是按照Cmake的语法描述我们的项目。

在 linux 平台下使用 CMake 生成 Makefile 并编译的流程如下:

  • 写 CMake 配置文件 CMakeLists.txt
  • 执行命令 cmake PATH 或者 ccmake PATH 生成 Makefile(ccmake 和 cmake 的区别在于前者提供了一个交互式的界面)。其中, PATH 是 CMakeLists.txt 所在的目录。
  • 使用 make 命令进行编译。

用IDE工具

Cmake有自己一套GUi工具,我们也可以通过GUI工具直接生成相应的CmakeLists文件。
我平时喜欢使用Clion的工具包,它的界面做的更加友好,当你使用Clion编写Cmake程序时编译器会自动帮你将文件存放到CmakeLists文件中,非常好用!~

在这里插入图片描述

GUI构建步骤

  1. 打开Cmake-gui

在这里插入图片描述

  1. 在“Where is source code”中加载源码所在目录

  2. 在“Where to build the binarys”中加载源码所在目录下的build目录,生成了项目文件就在这里

  3. 点击 Configure 选择项目启动方式

  4. 点击 Generate 生成解决方案

  5. 点击Open Project 调用Vs打开工程

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

AlbertOS

还会有大爷会打钱?

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值