【CMake保姆级教程】CMake图文安装教程

简介: 【CMake保姆级教程】CMake图文安装教程

一、CMake概况


CMake 是一个项目构建工具,并且是跨平台的。关于项目构建我们所熟知的还有Makefile(通过 make 命令进行项目的构建),大多是IDE软件都集成了make比如:VS 的 nmake、linux 下的 GNU make、Qt 的 qmake等,如果自己动手写 makefile,会发现,makefile 通常依赖于当前的编译平台,而且编写 makefile 的工作量比较大,解决依赖关系时也容易出错。

而 CMake 恰好能解决上述问题, 其允许开发者指定整个工程的编译流程,在根据编译平台自动生成本地化的Makefile和工程文件,最后用户只需make编译即可,所以可以把CMake看成一款自动生成 Makefile的工具,其编译流程如下图:

c8df052600d9473abe0d396e783d8a44.png

CMake优点:

  • 跨平台
  • 能够管理大型项目
  • 简化编译构建过程和编译过程
  • 可扩展:可以为 cmake 编写特定功能的模块,扩充 cmake 功能


二、安装Ubuntu CMake


1、打开终端

d6c21d59baa14dc4852e4d3eada2a254.png

2、执行以下命令以更新软件包索引:

sudo apt update

e7fa6120c17d48388f6fa345e578ffbd.png

3、安装 CMake

sudo apt install cmake

9677f4cb8dc04debaa4ca119f3f1b799.png


因为我已经安装了CMake,大家执行这个命令就行了,我在此就不多演示了。

4、如果系统提示需要确认,请输入密码并按下 Enter 键以继续安装。

5、完成安装后,你可以通过运行以下命令来验证 CMake 是否成功安装:

cmake --version

913ed3c76e314e13a184f211bfbc9bd6.png

我的CMake版本是3.22.1,下载的其他版本影响不大,后面可以编写CMake的时候可以调整。


三、简单的CMake实验


如何使用CMake

我们使用CMake需要编写一个CMakeLists.txt里面放的是CMake命令。

编写好之后执行cmake .(用于CMake文件在本级目录的)/cmake ..(用于CMake在父级目录的)

执行好后,找到makefile所在的文件夹,执行make


测试代码

测试main.c

#include <stdio.h>
extern void func();
int main()
{
    func();
    return 0;
}


测试func.c:

#include <stdio.h>
void func()
{
    printf("Hello CMake");
}


测试CMakeLists.txt

cmake_minimum_required(VERSION 3.0.0)#指定版本
project(test)#指定我这个项目的名称,不是可执行文件的名称
add_executable(app main.c func.c)#app是可执行文件 后面的是源文件 中间用空格隔开


执行CMake

1、打开终端,打开CMakeLists.txt所在的文件夹

执行下面的命令

cmake .


1e3a62d2a1f247a3971ff1871decf613.png

终端就会输出这些东西,我们的文件夹也会多出很多东西。


2、终端打开CMakeLists.txt同级文件夹。

执行makefile命令

make

7a56d88c44504c32b192423bb11153fc.png

我们就会看到上面的景象。


3、执行可执行文件

./app

656062335ba1463189759b0be1b12221.png

最终结果如上所示。


总结


CMake 是一个项目构建工具,并且是跨平台的。关于项目构建我们所熟知的还有Makefile(通过 make 命令进行项目的构建),大多是IDE软件都集成了make比如:VS 的 nmake、linux 下的 GNU make、Qt 的 qmake等,如果自己动手写 makefile,会发现,makefile 通常依赖于当前的编译平台,而且编写 makefile 的工作量比较大,解决依赖关系时也容易出错。


我们使用CMake的时候只需要cmakemake一下就可以,非常快速简单。

相关文章
|
6月前
|
安全 Linux iOS开发
Anaconda下载及安装保姆级教程(详细图文)
Anaconda下载及安装保姆级教程(详细图文)
779 0
Anaconda下载及安装保姆级教程(详细图文)
|
7月前
|
存储 算法 搜索推荐
CMake 保姆级教程(下)
如果项目很大,或者项目中有很多的源码目录,在通过CMake管理项目的时候如果只使用一个`CMakeLists.txt`,那么这个文件相对会比较复杂,有一种化繁为简的方式就是给每个源码目录都添加一个`CMakeLists.txt`文件(头文件目录不需要),这样每个文件都不会太复杂,而且更灵活,更容易维护。
183 0
|
4月前
|
定位技术
MicroStation软件与Terrasolid插件合集的安装方法
MicroStation软件与Terrasolid插件合集的安装方法
|
6月前
|
C++
【CMake保姆级教程】CMake的使用
【CMake保姆级教程】CMake的使用
|
7月前
|
存储 IDE Linux
CMake 保姆级教程(上)
CMake 是一个项目构建工具,并且是跨平台的。关于项目构建我们所熟知的还有Makefile(通过 make 命令进行项目的构建),大多是IDE软件都集成了make,比如:VS 的 nmake、linux 下的 GNU make、Qt 的 qmake等,如果自己动手写 makefile,会发现,makefile 通常依赖于当前的编译平台,而且编写 makefile 的工作量比较大,解决依赖关系时也容易出错。 而 CMake 恰好能解决上述问题, 其允许开发者指定整个工程的编译流程,在根据编译平台,`自动生成本地化的Makefile和工程文件`,最后用户只需`make`编译即可.
231 0
|
9月前
|
Java Apache
jmeter下载及安装教程-保姆级
jmeter下载及安装教程-保姆级
346 0
|
9月前
|
Web App开发 JavaScript 前端开发
VueCLi的安装步骤(第四课)
VueCLi的安装步骤(第四课)
190 0
|
10月前
|
IDE 编译器 开发工具
统信UOS系统开发笔记(四):从Qt源码编译安装之编译安装QtCreator4.11.2,并配置编译测试Demo
上一篇已经从Qt源码编译了Qt,那么Qt开发的IDE为QtCreator,本篇从源码编译安装QtCreator,并配置好构建套件,运行Demo并测试。
|
10月前
|
芯片
统信UOS系统开发笔记(三):从Qt源码编译安装之编译安装Qt5.12.8
上一篇,是使用Qt提供的安装包安装的,有些场景需要使用到自己编译的Qt,所以本篇如何在统信UOS系统上编译Qt5.12.8源码。
统信UOS系统开发笔记(三):从Qt源码编译安装之编译安装Qt5.12.8
Photoshop 2019软件安装包+安装教程(所有系统大合集)
Adobe Photoshop 2019简称“PS 2019”,是最强大的图像编辑处理软件。是平面设计行业首选的软件,拥有所有最先进的编辑,合成和绘画功能,该软

相关实验场景

更多