1、下载cmake
写文章时,机器上安装的是 cmake-3.20.6.zip。
下载后,解压包。
配置环境变量,把解压后的 bin 目录,添加到 path 下。
查看 cmake 支持的编译方式
> cmake --help
> # 找到 Generators 章节,列出的即支持的平台
> # 我们要编译到 visual studio 2019,即如下 cmd
> cmake -G "Visual Studio 16 2019" -D CMAKE_INSTALL_PREFIX=${your_install_path}
2、下载visual studio
本文使用的是 visual studio 2019 community 版本,组件选择如下图:
安装完毕后,找到 visual studio 2019 的 devenv.exe 文件路径,在你安装的目录下,我的位置是:
D:\VisualStudio\2019\Community\Common7\IDE
添加到 path 环境变量里面。注销账户或者重启一下命令行、powershell窗口,让环境变量生效。
3、下载yaml-cpp
> git clone https://github.com/jbeder/yaml-cpp.git
> cd yaml-cpp
> git checkout yaml-cpp-0.7.0
4、编译
> cd yaml-cpp
> mkdir build
> cd build
> cmake -G "Visual Studio 16 2019" -D CMAKE_INSTALL_PREFIX=D:/clibs/yaml-cpp/0.7.0 ..
5、测试
CmakeLists.txt
cmake_minimum_required(VERSION 3.20)
project(yaml_cpp_test)
set(CMAKE_CXX_STANDARD 11)
set(YAML_INCLUDE D:/clibs/yaml-cpp/0.7.0/include)
set(YAML_LIB D:/clibs/yaml-cpp/0.7.0/lib)
include_directories(${YAML_INCLUDE})
add_executable(yaml_cpp_test main.cpp)
target_link_libraries(yaml_cpp_test PUBLIC
${YAML_LIB}/libyaml-cpp.a
)
main.cpp
#include <iostream>
#include "yaml-cpp/yaml.h"
int main() {
using namespace std;
using namespace YAML;
Node config = LoadFile("E:\\workspace-clion\\yaml-cpp-test\\resources\\test.yaml");
auto aa = config["aa"].as<int>();
auto bb = config["bb"].as<string>();
auto dd = config["cc"]["dd"].as<string>();
std::cout << aa << " " << bb << " " << dd << std::endl;
string tem{};
while (true) {
cin >> tem;
if (tem == "exit") {
break;
}
cout << tem << endl;
}
return 0;
}
test.yaml
aa: 11
bb: hello
cc:
dd: yaml-cpp