jinchanchan 发表于 2026-1-23 10:20:31

ubuntu下c++对应yaml-cpp的安装与测试

一.yaml-cpp的安装1.下载终端下执行git clone https://github.com/jbeder/yaml-cpp.git2.编译安装利用Cmake有点类似于opencv的安装,终端cd进入yaml-cpp文件夹下后执行:mkdir build   #新建build 文件夹

cd build

cmake -DBUILD_SHARED_LIBS=ON ..         #ON 设置生成共享库

sudo make install3.验证pkg-config --modversion yaml-cpp出现版本信息二.测试build文件夹,config.yaml,CmakeList.txt,main.cpp在同一个文件夹下。config.yaml,CmakeList.txt,main.cpp我是用vim写的1.CmakeList.txtcmake_minimum_required(VERSION 2.8)
project(yaml_test)            #yaml_test为项目名称

set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")

link_directories(/home/mingyang/yaml-cpp/build)            #链接到build路径,具体要看自己电脑中yaml-cpp/build在哪里

#链接到yaml-cpp/include/yaml-cpp路径,建议直接链接到这里,以后编程头文件直接为#include "yaml.h" 即可include_directories(/home/mingyang/yaml-cpp/include/yaml-cpp)   

add_executable(${PROJECT_NAME} main.cpp)   #main.cpp为自己写的.cpp文件名,与CmakeList.txt文件在一个文件夹下

target_link_libraries(${PROJECT_NAME} yaml-cpp)   #yaml_test为项目名称


机会【大厂热招】前端/后端/测试等多岗位开放!地点:北京、上海、深圳等多地可选;优势:待遇竞争力强,业务稳定发展点击——>[大厂]快速投递简历,欢迎推荐与自荐!
2. config.yaml 名字随意,.yaml就行,对应 main.cpp 中文件加载语句name: frank
sex: male
age: 18


skills:
c++: 1
java: 1
android: 1
python: 12.main.cpp名字随意,.cpp就行,对应 CmakeList.txt文件#include<iostream>
#include"yaml.h"

using namespace std;
using namespace YAML;

int main(int argc,char** argv)
{
    Node config = LoadFile("../config.yaml");
    cout<<"name:"<<config["name"].as<string>()<<endl;
    cout<<"sex:"<<config["sex"].as<string>()<<endl;
    cout<<"age:"<<config["age"].as<int>()<<endl;
    return 0;
}
3.编译运行终端进入build 文件夹后执行:cmake ..   #cmake+空格+..

make

./yaml_test   #CmakeList.txt中对应的项目名,此时build中也能够看到

转载:来源:CSDN;博主:墨云纵
页: [1]
查看完整版本: ubuntu下c++对应yaml-cpp的安装与测试