一个简单的CMake例子

1.欢迎来到我的酒馆

        Windows环境下,从零开始CMake !

2.什么是cmake ??

         cmake一款开源、跨平台的构建工具,旨在构建、测试和打包软件。cmake通常用来控制软件的编译流程,通过使用简单的平台和独立的配置文件、生成本地的makefile文件和工作区。
在这里插入图片描述

3.安装cmake

        可以去官网下载,cmake官网下载地址 https://cmake.org/download/
在这里插入图片描述
在安装选项里,选择添加cmake到系统环境变量。之后,下一步,等待安装完成。
在这里插入图片描述

检测我们安装的cmake是否成功,win+r打开运行,输入cmake -version,检测cmake的安装版本,如果输出对应的版本号,说明我们的cmake安装好了。
在这里插入图片描述

4.构建项目

         cmake安装好了,我们就可以开始构建项目了。新建一个文件夹,“project”,在project文件夹新建一个测试代码文件hello.c,一段非常简单的代码:

#include <stdio.h>

int main() {
    printf("Hello, World!\n");
    return 0;
}

        接着我们写CMakeLists.txt文件,这个文件从名字上看cmake,对了,他就是cmake的配置文件,我们在里面写上关于编译程序的配置文件。它和Makefile有点类似,都是记录与程序编译相关的东西,Makefile是由make程序来执行,对应地,CMakeLists.txt是由cmake程序执行。
CMakeLists.txt:

# 设置cmake的最低版本
cmake_minimum_required(VERSION 3.10)

#创建一个项目 Tutorial
project(Tutorial)

# 添加一个可执行文件名为 Tutorial,并指定编译的源文件为hello.c
add_executable(Tutorial hello.c)

现在两个文件就准备好了,看一下我们写好的文件:
在这里插入图片描述

接下来,就开始编译项目了,win+r 打开运行,输入cmd,在命令行输入命令:

cmake . -G "MinGW Makefiles"

发现报错:
CMake Error: CMake was unable to find a build program corresponding to “MinGW Makefiles”. CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool.
报了cmake无法使用"MinGW Makefiles" 来构建程序

解决办法:安装MinGW, 并配置系统环境变量。
sourceforge下载MinGW https://sourceforge.net/projects/mingw-w64/files/mingw-w64/mingw-w64-release/
在这里插入图片描述

在这里插入图片描述
下载好的MinGW是一个压缩包文件,用解压软件解压一下,
在这里插入图片描述
解压出来,MinGW就能用了,里面包含了各种工具。
接着,我们配置系统环境变量,进入目录:x86_64-8.1.0-release-posix-sjlj-rt_v6-rev0,在进入:mingw64,找到bin目录,复制bin目录:
在这里插入图片描述
接着,点击我的电脑,属性,高级系统设置,环境变量,
在这里插入图片描述
点击编辑后,新建一个系统环境变量,把刚刚mingw的bin目录完整路径复制过来,就添加好了path系统环境变量。
测试我们安装的mingw:win + r 打开运行,输入命令:

gcc --version

在这里插入图片描述
在命令行窗口输出了gcc的版本号,说明我们配置MinGW的path系统环境变量成功了。接着继续cmake命令,构建程序。

cmake . -G "MinGW Makefiles"

在这里插入图片描述
然后,调用构建系统去编译这个项目:

cmake --build . 

在这里插入图片描述
这里构建的程序名为:Tutorial,是一个可执行文件,可直接运行。Hello, World ! cmake构建项目完成了。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值