CMake教程(一)——初步入门
介绍#
CMake是个一个开源的跨平台自动化建构系统,用来管理软体建置的程序,并不依赖于某特定编译器,并可支援多层目录、多个应用程式与多个函式库。通过配置CMakeLists.txt,来生成构建档,这个构建档可以是Makefile,也可以是Ninja。
CMake为跨平台构建做出了很多贡献,你可以不对CMake做出修改,也能很好的在其他系统上构建运行,这使得它成为当代最受欢迎的C/C++构建系统。在Qt6中,被指定为默认的构建工具,而不是qmake。早在2020年,Visual Studio就开始支持CMake。在Clion中是默认的构建系统。
以下主要以Linux系统为例,但这些方法在Mac和Windows上也同样适用,熟悉自己系统命令行环境就可以轻松驾驭CMake。
工作机制#
CMake有一大特色就是可以让项目编译构建在指定目录,而不是一定要在根目录。
绝大多数时候,CMake的项目工程里,你只需要这样构建:
mkdir build # 创建一个编译构建的指定目录
cd build # 打开该目录
cmake .. # ..是指上一层目录,也就是项目根目录,cmake会在这里寻找CMakeLists.txt文件
cmake --build . # 在build目录下编译链接
这样有个很大的好处,就是你可以在编译后如果发生了错误,想要重来,删除build文件夹就可以了,其他软件的构建工具也是这样设计的,例如Virual Studio。
构建完成后,你就会在build里找到你所需要的可执行程序。
当然,你也可以用其他易于理解的文件夹名,例如Build。
CMake还有非常丰富的配置功能,这样就不需要依赖IDE配置,可以随处编译运行。
安装#
Ubuntu
sudo apt install cmake
openSUSE
sudo zypper install cmake
安装Ninja(可选)
Ubuntu
sudo apt install ninja-build
openSUSE
sudo zypper install ninja
详细使用,请参考下一篇文章CMake教程(二)——基本操作。
点击这里返回目录
作者:leedsgarden
出处:https://www.cnblogs.com/leedsgarden/articles/16529756.html
版权:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律