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

一.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中也能够看到

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值