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

相关推荐
星幻元宇VR21 小时前
公共安全实训展厅设备【人防知识学习系统】
科技·学习·安全
心中有国也有家1 天前
AtomGit Flutter 鸿蒙客户端:情绪日记的时间线实现
学习·flutter·华为·harmonyos
百里香酚兰1 天前
【python学习笔记】pyttsx3库疑似只播报一次语音
笔记·python·学习
恣逍信点1 天前
《凌微经》助读:本体论根基——“无之自悖”与“形性一体”
人工智能·科技·学习·程序人生·生活·交友·哲学
chh5631 天前
C++--string
java·开发语言·网络·c++·学习
chnyi6_ya1 天前
论文阅读笔记:VideoWeaver — 面向智能体长视频生成的技能评估与进化
论文阅读·笔记·音视频
J_yyy1 天前
基于Reactor的文件管理服务开发笔记
c++·笔记·reactor·多线程编程·muduo
浩瀚地学1 天前
【Java基础复习】IO流(四)
java·开发语言·经验分享·笔记·学习
疯狂打码的少年1 天前
【操作系统】板块总结 + 下期预告(软件工程)
笔记·软件工程
心中有国也有家1 天前
AtomGit Flutter 鸿蒙客户端:一键记录情绪的极致体验
学习·flutter·华为·harmonyos