zoukankan      html  css  js  c++  java
  • CentOS安装jsoncpp

    两种安装方式:

    1. 通过cmake安装
    2. 通过scons安装

    cmake安装见cmake安装jsoncpp,scons安装见下文。

    1. 安装scons

    tar zxvf scons-2.5.0.tar.gz
    export MYSCONS=/root/file/scons-2.5.0
    export SCONS_LIB_DIR=$MYSCONS/engine

    MYSCONS要换成你自己文件的路径。

    (我还把这两行export添加到了 /etc/profile 文件中了。)

    2. 编译安装jsoncpp

    tar zxvf jsoncpp-1.8.0.tar.gz
    cd jsoncpp-1.8.0
    python $MYSCONS/script/scons platform=linux-gcc

    3. 路径设置

    把源码中的json文件夹拷贝到/usr/local/include目录下

    把生成的.a和.so文件拷贝到/usr/local/lib目录下。

    打开/etc/profile,添加以下内容:

    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
    export LIBRARY_PATH=$LIBRARY_PATH:/usr/local/lib

    保存,再来一句: source /etc/profile,修改立即生效。

    安装结束。

    ----------------------------

    一个Demo:

    #include <iostream>
    #include "json/json.h"
    
    using namespace std;
    
    int main()
    {
        Json::Value root;
        root["key1"] = "value1";
        root["key2"] = "value2";
        
        Json::Value value31;
        value31["key31"] = "value31";
        value31["key32"] = "value32";
        Json::Value value3;
        value3.append(value31);        // value3[0] = value31;
        root["key3"] = value3;
        //for (Json::Value::const_iterator it = value3.begin(); it != value3.end(); it++) {
        //    Json::Value currentValue = *it;
        //    for (Json::Value::const_iterator it = currentValue.begin(); it != currentValue.end(); it++) {
        //        cout << (*it).asString() << endl;
        //    }
        //}
        Json::Value value4;
        value4["key41"] = "value41";
        value4["key42"] = "value42";
        root["key4"] = value4;
        //for (Json::Value::const_iterator it = value4.begin(); it != value4.end(); it++) {
        //    cout << (*it).asString() << endl;
        //}
        Json::Value value5;
        value5[0] = "value51";
        value5[1] = "value52";
        value5[2] = "value53";
        root["key5"] = value5;
        //for (Json::Value::const_iterator it = value5.begin(); it != value5.end(); it++) {
        //    cout << (*it).asString() << endl;
        //}
        string str = root.toStyledString();
        cout << "Json 大小为: " << root.size() << endl;
        cout << "Json 值为: " << str << endl;
    
        for (Json::Value::const_iterator it = root.begin(); it != root.end(); it++) {
            string key = it.name();
            cout << "Current Json key is: " << key << endl;
            Json::Value value = *it;
            cout << "Current Json value is: " << value << endl;
            cout << "Current Json value size is: " << value.size() << endl;
    
            cout << endl;
        }
    
        return 0;
    }
    View Code

    执行结果:

    参考文档:

    CentOS源码安装Jsoncpp

  • 相关阅读:
    系统兼容性与软件兼容性
    SqlServer 笔记三 规则
    Sql Server 2008 与 Visual Studio 2008 安装说明
    Ms Sql Server
    Git系列教程三 配置与基本命令
    Git系列教程一 入门与简介
    Git系列教程二 基础介绍
    浏览器IE与非IE区分
    SqlServer 笔记二 获取汉字的拼音首字母
    时间戳与日期字符串的转换
  • 原文地址:https://www.cnblogs.com/gattaca/p/6296400.html
Copyright © 2011-2022 走看看