cMake学习笔记(初级使用)

一直觉得做C和C++开发的人,不懂Cmake总是差点意思。最近浏览github上面,很多都是cmake+make的方式出来的C库,下载起来一堆文件,根本不知道应该看什么,应该如何使用。

所以先学习基础的cmake用法,目前只用到了linux和Windows,在Linux上面编译器使用GCC,在Windows上默认使用visual studio ,也可以使用mingw,类似Linux上的gcc。

安装vs、mingw、cMake都是基础操作,安装完事在Windows上要添加环境变量,mingw最好自行放在一个路径比如我的路径:C:\MinGW,同时更改mingw32-make.exe换成make.exe,如果不改名的话,直接make就会报错,为了两个系统上面的操作一致,改名即可。

任何编程的工程都有源文件,cmake让编译和链接生成这个过程简单了,主要靠的是CMakeLists.txt这个文件。

cmake_minimum_required (VERSION 2.8)

project (hello)

add_executable(hello hello.cpp)

单个源文件最简单的用法如上,

  • 第一行意思是cmake最低版本要求2.8,
  • 第二行是本项目的工程名
  • 第三行:第一个变量:要生成的可执行文件名为hello,后面的参数是需要的依赖。

其余多文件,多个路径,多个头文件可以参考这个帖子,我就不重复了。

cmake使用详细教程(日常使用这一篇就足够了)_cmake教程-CSDN博客

我发现在Windows上面默认使用的是vs,那么如何使用mingw呢,其实特别简单

复制代码
mkdir build
cd build
cmake -G"Unix Makefiles" ../

只要用上面三个命令就可以了。当然前提是配置好环境,上述执行在cmd中。

当然也参考了这个帖子:
Windows下CMake安装使用_windows cmake安装-CSDN博客

目前我觉得cmake作为一个工具,重要的是学会使用,主要有两个部分:1,CMakeLists.txt文件的编写;2,cmake的使用参数。具体细节就不深究了,人生苦短,在编程中取乐吧。

相关推荐
小雪崩9 小时前
嵌入式学习 day61-62:IMX6ULL驱动——系统移植
学习
一隅论数智9 小时前
OWL(Web Ontology Language)介绍与使用举例(二)
大数据·经验分享·笔记·学习·自然语言处理·学习方法·政务
我命由我123459 小时前
Photoshop - Photoshop 使用内容识别填充移除对象
学习·职场和发展·产品运营·求职招聘·职场发展·学习方法·photoshop
梓雨枔10 小时前
JavaScript+快速学习,简单好用~
javascript·学习
老王爱玩车11 小时前
自定义类型:结构体
c语言·开发语言·学习
JWASX12 小时前
Java 转 go 学习 - GRPC(1)
学习·golang
鬼手点金12 小时前
opencode-全能开发者配置
java·linux·服务器·前端·javascript·学习·前向传播
代码山河13 小时前
Java学习路线图:2026年最新版,从入门到架构师
java·学习·架构·教程·面向对象·项目
sunoo-22913 小时前
【嵌入式Linux驱动学习】Day1-Day2 全流程梳理:环境搭建→U-Boot→内核→根文件系统→驱动基础
linux·运维·驱动开发·笔记·学习·阿里云·恩智浦
我命由我1234513 小时前
Photoshop - Photoshop 使用简单的选择工具
学习·职场和发展·产品运营·求职招聘·职场发展·学习方法·photoshop