![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
CMake
文章平均质量分 80
CMake系统学习
蔡不菜和他的uU们
这个作者很懒,什么都没留下…
展开
-
【CMake系列】00-CMake学习目录
本专栏系统概括了CMake的各个使用核心功能,从对CMake 自身的介绍、CMake常用命令、CMake动态库静态库的构建、CMake 引入第三方库、导出、 测试、安装、打包 都进行了覆盖,同时对细节的内容也进行了补充,如自动添加源码、项目的目录结构设置,输出路径,debug release 特性的设置;原创 2024-06-05 17:02:23 · 392 阅读 · 0 评论 -
【CMake系列】11-CMake Pack
cmake pack用于将我们的写好的项目 打包,发送给使用方;打包后产生的内容有源代码包二进制包平台原生的二进制安装本专栏的实践代码全部放在上,欢迎 star!!!如有问题,欢迎留言、或加群【392784757】交流。原创 2024-06-05 17:00:49 · 884 阅读 · 0 评论 -
【CMake系列】10-cmake测试集成googletest与第三方库自动化构建
cmake测试,使用ctest 可能不能满足我们的需求,需要我们使用更为强大的第三方测试框架,如googletest,完成项目中的测试工作本篇文章将第三方测试框架 googletest,引入,同时也可以作为 关于 第三方包 自动化构建的很好示例,值得学习本专栏的实践代码全部放在上,欢迎 star!!!如有问题,欢迎留言、或加群【392784757】交流。原创 2024-06-05 16:59:21 · 300 阅读 · 0 评论 -
【CMake系列】10-cmake测试 ctest
cmake作为一个强大的构建系统指导工具,同时也提供了测试功能,可用于项目的单元测试等,也可以与其他测试框架协作,如googletest,共同完成项目开发中的测试工作,本节我们就来学习 如何借助cmake 完成测试本专栏的实践代码全部放在上,欢迎 star!!!如有问题,欢迎留言、或加群【392784757】交流接下来给出我们本节的CMakeLists.txt 文件接下来,我们将逐行进行解释,首先,我们来明确一下测试,将我们的程序的输出与期待输出进行判断程序的输出 在这里分为两种情况。原创 2024-06-05 16:58:16 · 282 阅读 · 0 评论 -
【CMake系列】09-cmake install 一般文件 文件夹 源代码
上一节,我们学习了项目构建后、目标的安装,本节学习的内容是 对于一般文件,文件夹以及源代码的安装本节的文件依然使用 file(WRITE xxx.xx) 来创建,不依赖额外的文件本专栏的实践代码全部放在上,欢迎 star!!!如有问题,欢迎留言、或加群【392784757】交流。原创 2024-06-05 16:56:33 · 247 阅读 · 0 评论 -
【CMake系列】09-cmake install
本节我们来学习,cmake的安装,将我们构建的目标安装到指定位置,为了模拟一般情况,实现了 可执行文件、静态库、动态库的安装,以及一般的 file 安装、代码的安装本专栏的实践代码全部放在上,欢迎 star!!!如有问题,欢迎留言、或加群【392784757】交流接下来将分步给出今天的CMakeLists.txt 内容。原创 2024-06-05 16:54:43 · 403 阅读 · 0 评论 -
【CMake系列】08-debug release特性设置
在构建的程序版本中,一共有 debug release minisize relwithDebugInfo四种,其中我们主要使用到就是 debug release 两种,这两种存在着一定的不同,debug 版本 用于调试,有调试信息,方便调试,体积也更大;release版本 用于发布,体积更小;在使用cmake 针对 debug release 配置时也存在一定的不同,本节,我们就来学习 cmake 构建目标版本 debug release 特性的设置。本专栏的实践代码全部放在上,欢迎 star!!原创 2024-06-05 16:52:57 · 919 阅读 · 0 评论 -
【CMake系列】07-export与find
为了将我们的库文件更方便地提供给他人使用,cmake 提供了一种方式,通过查找 .cmake 文件,将库导入项目中。本节学习的内容,就是将我们的库导出一个 xxx.cmake 文件,以及 在项目中导入本专栏的实践代码全部放在上,欢迎 star!!!如有问题,欢迎留言、或加群【392784757】交流xxxConfig.cmake 文件是一个 CMake 配置文件用于在项目中查找和使用某个库。目的是方便在其 CMake 构建系统中找到并正确配置该库。原创 2024-06-05 16:51:22 · 724 阅读 · 0 评论 -
【CMake系列】06-项目结构与输出路径管理
为了对大型项目实现更好的管理【模块化协作开发等等】,cmake 提供了很多指令,可以对项目的结构进行调整、管理,便于项目的合理规划。本文我们要学习的就是 项目结构的设置,以及 构建程序等 输出路径的设置本专栏的实践代码全部放在上,欢迎 star!!!如有问题,欢迎留言、或加群【392784757】交流。原创 2024-06-05 16:50:22 · 451 阅读 · 0 评论 -
【CMake系列】05-静态库与动态库编译
在各种项目类型中,可能我们的项目就是一个 库 项目,向其他人提供 我们开发好的 库 (windows下的 dll /lib;linux下的 .a / .so);有时候在一个项目中,我们对部分功能 打包成 库,方便在不同地方进行调用静态库 和 动态库 对项目 实现了 不同程度的解耦,学会使用 cmake 构建 静态库 和 动态库,是我们这篇文章的主要内容本专栏的实践代码全部放在上,欢迎 star!!!如有问题,欢迎留言、或加群【392784757】交流。原创 2024-06-05 16:49:17 · 865 阅读 · 0 评论 -
【CMake系列】03-cmake 注释、常用指令 message、set、file、for_each、if
本文给出了 cmake 中的 一些常用的 指令message set file for_each if,可以快速了解,为后面的内容深入 打点基础。原创 2024-06-05 16:47:45 · 431 阅读 · 0 评论 -
【CMake系列】02-第一个CMake项目
CMake 构建我们的第一个helloword的项目,从更细的粒度上了解CMake在做什么原创 2024-06-05 16:45:23 · 396 阅读 · 0 评论 -
【CMake系列】01-CMake是什么
CMake是一个构建系统生成工具。将描述构建系统(如:Unix Makefile、Ninja、Visual Studio等)应当如何操作才能编译代码;然后,CMake为所选的构建系统生成相应的指令。原创 2024-06-05 16:43:54 · 583 阅读 · 0 评论