CMake学习笔记-VSCode使用Cmake编译C++工程

环境

Win + MinGW + CMake + Git

单文件工程

python 复制代码
# 1 指定最小版本号
cmake_minimum_required(VERSION 3.10)
# 2 指定工程名
project(Tutorial)
# 3 设置编译器路径
set(CMAKE_C_COMPILER "D:/ProgramPackage/mingw64/mingw64/bin/gcc.exe") 
set(CMAKE_CXX_COMPILER "D:/ProgramPackage/mingw64/mingw64/bin/g++.exe")
# 4 屏蔽 git/sh.exe 的影响
 # For MinGW make to work correctly sh.exe must NOT be in your path.
 # Run cmake from a she11 that does not have sh.exe in your PATH. 
set ( DCMAKE_SH= "CMAKE_SH-NOTFOUND")
# 5 设置工程版本号
project(Tutorial VERSION 1.0) 
# 6 设置编译语言标准
set (CMAKE_CXX_STANDARD 11)
set (CMAKE_CXX_STANDARD_REQUIRED True)
# 7 (可选)配置编译文件,可通过in文件替换代码中的宏定义
configure_file(TutorialConfig.h.in TutorialConfig.h) 
# 8 设置可执行文件对应源文件
add_executable(Tutorial tutorial.cxx)
# 9 包含头文件路径
target_include_directories(Tutorial PUBLIC
					"${PROJECT_BINARY_DIR}" )


编译指令

mkdir build
cd build
cmake -G "MinGW Makefiles" (Win环境下使用 "cmake .." 命令与MinGW不兼容)
cmake --build . 或 mingw32-make 

参考资料

官方教程1: https://cmake.org/cmake/help/latest/guide/tutorial/A Basic Starting Point.html

官方教程2:
https://cmake.org/cmake/help/book/mastering-cmake/cmake/Help/guide/tutorial/index.html

官方练习材料1:https://github.com/Kitware/CMake.git

官方练习材料2:https://github.com/Kitware/CMake/blob/master/Help/guide/tutorial/Step1/tutorial.cxx

相关推荐
PNP Robotics8 分钟前
【PNP具身解读】GPT6 Astra:具身智能新范式,大模型 + Franka机器人快速落地验证一、GPT6 Astra 背后的布局、数据与具身方向
人工智能·学习·机器学习·机器人
小李不想当小白25 分钟前
PCB结构与组成(PCB设计入门学习笔记)
经验分享·笔记·单片机·嵌入式硬件·学习·pcb工艺·pcb
那年窗外下的雪.27 分钟前
第 02 天:Linux 权限、inode、目录项与链接
学习·http
XGStudio20241 小时前
免费安全的 - 二维码转换工具
学习·ai
hanlin031 小时前
刷题笔记:力扣第76题-最小覆盖子串
笔记·算法·leetcode
hengmeida1 小时前
楼宇控制柜标准化项目交付完整规范
大数据·网络·笔记
邵奈一1 小时前
【紧急处理ZCode事件】ZCode 工作区快照静默上传:检测方法与三层防护实践
人工智能·学习·大模型·国产
蒸蒸yyyyzwd1 小时前
cpp 选手秋招学习笔记 day40
笔记·八股
有范先生1 小时前
速食米饭:如何避开闷味、干硬的速食主食
笔记
那年窗外下的雪.1 小时前
AIDC 学习日志|第 27 天|EVPN 多归属收敛时间线与 Leaf2 接管验证
网络协议·学习·http·tcpdump