IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发工具 -> CMAKE学习 -> 正文阅读

[开发工具]CMAKE学习

官方学习资料

系统的学习还是看官方资料为好。
CMake Reference Documentation — CMake 3.23.1 Documentation
https://cmake.org/cmake/help/latest/
Documentation | CMake
https://cmake.org/documentation/

CMake 3.21 中文
https://runebook.dev/zh-CN/docs/cmake/-index-

源代码例程

https://github.com/wzpan/cmake-demo.git

SFUMECJF/cmake-examples-Chinese: 快速入门CMake,通过例程学习语法。在线阅读地址:https://sfumecjf.github.io/cmake-examples-Chinese/
https://github.com/SFUMECJF/cmake-examples-Chinese

cmake · master · 十一月zz / CPP example · GitCode
https://gitcode.net/baidu_35679960/cpp-example/-/tree/master/cmake?from_codechina=yes

零散网页

CMake 入门实战 | HaHack
https://www.hahack.com/codes/cmake/

(50条消息) C++只读成员函数、只读对象_VSavitar的博客-CSDN博客_c++ 只读函数
https://blog.csdn.net/u011770174/article/details/74906811

C++工程:总结 CMake 添加第三方库依赖方式git submodule、 find_library、FetchContent、CPM等 - 简书
https://www.jianshu.com/p/f181b5bd0a63

一些常用命令

#cmake最小版本需求
cmake_minimum_required(VERSION xxx)

#设置此项目的名称
project(xxx) 

#生成可执行文件target ,后面填写的是生成此可执行文件所依赖的源文件列表。
add_executable(target target_source_codes) 

生成库文件,SHARED代表动态库,STATIC代表静态库, 最后一个参数代表此库的源文件列表
add_library(lib_name SHARED or STATIC lib_source_code) 

设置一个名字var_name 的变量,同时给此变量赋值为var_value
SET(var_name var_value)

#指定编译器
#CMAKE_C_FLAGS_DEBUG          ----  C 编译器
#CMAKE_CXX_FLAGS_DEBUG        ----  C++ 编译器
#-std=c++11  使用 C++11
#-g:只是编译器,在编译的时候,产生调试信息。
#-Wall:生成所有警告信息。一下是具体的选项,可以单独使用
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11   -g  -Wall  ")

#指定编译类型,debug 或者为 release
#debug 会生成相关调试信息,可以使用 GDB 进行
#release 不会生成调试信息。当无法进行调试时查看此处是否设置为 debug.
set(CMAKE_BUILD_TYPE Debug)

#打印消息
MESSAGE("MSG") 

#给变量var_name赋值为var_value,comment是此变量的注释,和SET 有类似的功效,用于给某变量设置默认值
option(var_name "comment" var_value) 

#添加include路径,也就是头文件路径
include_directories(xxx) 

#调用xxx子目录的CMakeLists.txt执行
add_subdirectory(xxx) 

#给编译器添加xxx参数
add_compile_options(xxx)

#给编译器添加库目录,有点儿类似-L
link_directories(xxx)

#给目标添加依赖库,有点儿类似-l(小写的L)
target_link_libraries(target_name lib_name ...)

统计的CMAKE常用指令和变量:
在这里插入图片描述

CMAKE的代码测试

【CMake 系列】(四)用 GoogleTest 测试 | 须臾之学
https://blog.xizhibei.me/2020/04/05/cmake-4-test-with-google-test/

(50条消息) cmake命令之add_test和set_tests_properties使用案例_青草地溪水旁的博客-CSDN博客
https://blog.csdn.net/weixin_42108533/article/details/119220713

  开发工具 最新文章
Postman接口测试之Mock快速入门
ASCII码空格替换查表_最全ASCII码对照表0-2
如何使用 ssh 建立 socks 代理
Typora配合PicGo阿里云图床配置
SoapUI、Jmeter、Postman三种接口测试工具的
github用相对路径显示图片_GitHub 中 readm
Windows编译g2o及其g2o viewer
解决jupyter notebook无法连接/ jupyter连接
Git恢复到之前版本
VScode常用快捷键
上一篇文章      下一篇文章      查看所有文章
加:2022-04-22 18:57:13  更:2022-04-22 18:58:13 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 2:45:28-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码