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

相关推荐
守护安静星空几秒前
esp32开发笔记-wifi网络
网络·笔记·vscode·单片机·tcp/ip
scholar沛1 分钟前
Obsidian & Zotero 联动 - 如何快速从Zotero生成一篇文献笔记
笔记
CompaqCV2 分钟前
OpencvSharp 算子学习教案之 - Cv2.Add
学习·c#·opencvsharp算子
CompaqCV7 分钟前
OpencvSharp 算子学习教案之 - Cv2.Subtract 重载3
学习·c#·opencvsharp算子·opencv教程
HERR_QQ24 分钟前
端到端课程自用 1课 感知部分
笔记·学习·自动驾驶
辞旧 lekkk27 分钟前
【Git】远程操作与标签管理
linux·git·学习·萌新
jrlong29 分钟前
HelloAgents 进阶篇 task00,task01
笔记·学习
fengci.35 分钟前
php反序列化(复习)(第五章)
android·开发语言·学习·php
jifeidanda12336 分钟前
图形学笔记——Curves(对应虎书15章)
笔记
ICscholar1 小时前
MoE负载均衡损失 & 梯度累加除法
人工智能·学习·算法