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

相关推荐
minglie19 分钟前
espidf的esp32版的webClient
学习
学运维的Kysan18 分钟前
暑假运维学习打卡第二十五天8.16
学习
键盘飞行员1 小时前
Flutter App 全套实战学习计划:从零搭建到 APK 部署
学习·flutter
疯狂打码的少年2 小时前
【数据结构】图的遍历:深度优先搜索(DFS)
数据结构·笔记·算法·深度优先
会编程的吕洞宾2 小时前
DeepAgents In Action学习(Second)
android·java·学习
我爱cope3 小时前
【计算机网络 | 数据链路层7:VLAN:一台交换机如何划分多个逻辑局域网?】
网络·学习·计算机网络
智者知已应修善业3 小时前
【51单片机数码管逐位显示1-8余位不亮】2024-10-23
c语言·经验分享·笔记·嵌入式硬件·51单片机
Wang's Blog3 小时前
PostgreSQL笔记16: 索引基础——概念、类型、创建与最佳实践
数据库·笔记·postgresql
babe小鑫3 小时前
2026信管专业学习数据分析的价值
学习·数据挖掘·数据分析
ysa0510303 小时前
c++常用自带函数用法与注意
c++·笔记·算法