学逆向论坛

找回密码
立即注册

只需一步,快速开始

发新帖

1289

积分

0

好友

161

主题
发表于 前天 10:20 | 查看: 37| 回复: 0

一.yaml-cpp的安装

1.下载

终端下执行

git clone https://github.com/jbeder/yaml-cpp.git

2.编译安装

利用Cmake有点类似于opencv的安装,终端cd进入yaml-cpp文件夹下后执行:

mkdir build     #新建build 文件夹

cd build

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

sudo make install

3.验证

pkg-config --modversion yaml-cpp

出现版本信息

二.测试

build文件夹,config.yaml,CmakeList.txt,main.cpp  在同一个文件夹下。config.yaml,CmakeList.txt,main.cpp我是用vim写的

1.CmakeList.txt

cmake_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: 1

2.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.如果您喜欢这篇帖子,请给作者点赞评分,点赞会增加帖子的热度,评分会给作者加学币。(评分不会扣掉您的积分,系统每天都会重置您的评分额度)。
2.回复帖子不仅是对作者的认可,还可以获得学币奖励,请尊重他人的劳动成果,拒绝做伸手党!
3.发广告、灌水回复等违规行为一经发现直接禁言,如果本帖内容涉嫌违规,请点击论坛底部的举报反馈按钮,也可以在【投诉建议】板块发帖举报。

小黑屋|手机版|站务邮箱|学逆向论坛 ( 粤ICP备2021023307号 )|网站地图

GMT+8, 2026-1-25 14:13 , Processed in 0.123062 second(s), 35 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表