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的使用参数。具体细节就不深究了,人生苦短,在编程中取乐吧。

相关推荐
晓幂5 小时前
【2025】HECTF
笔记·学习·web安全
慕云紫英6 小时前
基金申报的一点经验
学习·aigc
微露清风6 小时前
系统性学习C++-第十八讲-封装红黑树实现myset与mymap
java·c++·学习
宝贝儿好6 小时前
【强化学习】第六章:无模型控制:在轨MC控制、在轨时序差分学习(Sarsa)、离轨学习(Q-learning)
人工智能·python·深度学习·学习·机器学习·机器人
大、男人6 小时前
python之asynccontextmanager学习
开发语言·python·学习
做cv的小昊6 小时前
【TJU】信息检索与分析课程笔记和练习(8)(9)发现系统和全文获取、专利与知识产权基本知识
大数据·笔记·学习·全文检索·信息检索
盐焗西兰花7 小时前
鸿蒙学习实战之路-蓝牙设置完全指南
学习·华为·harmonyos
hkNaruto7 小时前
【AI】AI学习笔记:MCP协议与gRPC、OpenAPI的差异
人工智能·笔记·学习
笨鸟笃行7 小时前
0基础小白使用ai能力将本地跑的小应用上云(作为个人记录)
人工智能·学习
Nan_Shu_6147 小时前
学习: Threejs (1)
javascript·学习