0. 前言
目标:使用 VS2019 构建 CMake 项目,或导入、开发已有 CMake 项目。 为什么要这么做?
跨平台:目前的项目需要跨平台开发,主力平台是Linux,Windows主要做适配工作。 世界上最好的IDE:2010的时候,我就是用VS开发的,现在也算是重操旧业…… 本文内容:
以 SPDLOG 为例,使用 VS2019 编译已有的 CMake 项目 以 SPDLOG 为例,使用 VS2019 创建 CMAKE 项目,引入并使用编译好第三方包
1. 使用 VS2019 编译 SPDLOG
SPDLOG 是 C++ 中常用的日志工具,也是我本人选择使用的,因此以本项目为例来尝试如何在 Windows 下通过 VS 2019 编译已有的 CMake 项目。 第一步:下载 SPDLOG 源码。 第二步:通过 VS2019 打开 SPDLOG 源码目录。
打开方式以及打开结果如下图所示。 PS:打开项目后可能需要一点时间才能加载 SPDLOG 文件夹中的内容。
第三步:配置并编译项目
这一步的工作类似于 Linux 中的 cmake .. && make -j
右键点击 CMakeLists.txt
文件,点击spdlog 的 CMake 设置
PS:如果直接点击 生成
,会报错 错误 LNK1168 无法打开 example\example.exe 进行写入
第四步:安装
这一步的工作类似于 Linux 中的 sudo make install
右键点击 CMakeLists.txt
,点击 安装
即可。 默认安装在 out/install
中
2. 在 VS2019 中创建 CMake 项目引入 SPDLOG
本章目标是在 VS2019 中使用 CMake。 第一步:在 VS2019 中创建 CMake 项目。
这一步其实完全按照 VS2019 指南即可,没有任何难度。
第二步:修改源码
简答说就是在 CMakeLists.txt
和 cmake_demo.cpp
文件中引入并使用 SPDLOG
cmake_minimum_required (VERSION 3.8)
project ("cmake_demo")
find_package(spdlog REQUIRED)
add_executable (cmake_demo cmake_demo.cpp)
target_link_libraries(cmake_demo PRIVATE spdlog::spdlog)
# include "spdlog/spdlog.h"
int main ( )
{
spdlog:: info ( "Hello, {}!" , "World" ) ;
}
第三步:在配置 CMake 信息
主要就是在 CMakeSettings.json
配置一些信息,如 spdlog 的路径。 注意:要求 spdlog 与当前项目同属于 Debug 或 Release。 之后只需 生成
即可