希望我们不仅把编程当成一份工作,更要将其当成一份热爱!!!
-----潜意识中有个想成为一名厉害的程序员的梦
前言
在使用github的第三方库时,经常会看到cmake build,然后就去学习了一下。发现这玩意挺复杂,水很深。以下仅介绍简单的使用,以便于我们有思路根据github的源码来构建工程、生成依赖库/可执行程序。
cmake是干什么的?
cmake是用来构建工程的。
- 正常我们创建工程是用visual studio来创建的,像图1,创建的结果如图2。
- 但是如果根据github仓库中的源码(图3)来构建工程(因为你要利用源码构建工程后,才能生成.lib/.exe来使用)该怎么做呢?此时就可以利用camke 根据红色框的文件来构建我们的工程。
cmake的使用步骤
- 首先我这里有个main.cpp ,我想把它构建成visual studio的工程。
- 在当前目录创建CMakeLists.txt(文件名是固定这个名字)文件,输入以下内容(#后为注释),保存:
# 设置CMake的最低版本要求
cmake_minimum_required(VERSION 3.10)# 定义项目名称和版本号
project(MyProject VERSION 1.0)# 设置C++标准为C++11
# CMAKE_CXX_STANDARD变量指定使用的C++标准
# CMAKE_CXX_STANDARD_REQUIRED变量确保使用指定的C++标准
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED True)# 添加一个可执行文件
# add_executable命令会生成一个名为MyExecutable的可执行文件,源文件为main.cpp
add_executable(MyExecutable main.cpp)
- 在源码(main.cpp)的当前目录右键选择“在终端打开”,输入以下命令,执行后,如图5:
mkdir build #新建文件夹“build”
cd build #进入文件夹
cmake -G "Visual Studio 16 2019" .. #指定vs2019构建工程
- 此时在build文件下就能看到创建的工程,如图6:
- 打开工程生成解决方案后,在debug目录就能找到可执行程序。
提示
上述步骤,了解整体思路就好。对于如何写CMakeLists.txt里的内容无需细扣(除了有需要的情况),github仓库会提供的。
对于具体的 从github上获取源码、生成依赖库/可执行程序 的例子可以参考我的如下两篇文章:
windows下protobuf编译器、依赖库的cmake安装_cmake依赖protobuf库-CSDN博客
windows下abseil的安装——基于cmake、vs2019-CSDN博客
附录
想用其他版本的话,修改
cmake -G "Visual Studio 16 2019" .. #指定vs2019构建工程
为:
cmake -G "Visual Studio 14 2015" ..
cmake -G "Visual Studio 15 2017" ..
cmake -G "Visual Studio 16 2019" ..
cmake -G "Visual Studio 17 2022" ..