Linux下配置jsoncpp库

[亡魂溺海] 提交于 2019-11-26 18:34:34
[root@postgresql json]# uname -a
Linux postgresql 2.6.18-308.13.1.el5 #1 SMP Tue Aug 21 17:10:18 EDT 2012 x86_64 x86_64 x86_64 GNU/Linux

下载jsoncpp 和scons(类似GnuMake的工具)

http://sourceforge.net/projects/jsoncpp

http://www.scons.org/

装scons

#tar -zxvf scons-2.2.0.tar.gz
#cd scons-2.2.0
#python setup.py install

编译jsoncpp

#tar -zxvf jsoncpp-src-0.6.0-rc2.tar.gz
#cd jsoncpp-src-0.6.0-rc2

#scons platform=linux-gcc

#mv -r include/json /usr/include/
#mv libs/linux-gcc-4.1.2/libjson_linux-gcc-4.1.2_libmt.so /usr/lib/libjsoncpp.so
#mv libs/linux-gcc-4.1.2/libjson_linux-gcc-4.1.2_libmt.a /usr/lib/libjsoncpp.a

这里把库直接放/usr/lib目录。如果要放自己的目录的话把目录加到/etc/ld.so.conf然后ldconfig。

test.cpp

#include "json/json.h"
#include <string>
#include <iostream>
using namespace std;
int main()
{
    string test ="{\"id\":1,\"name\":\"kurama\"}";
    Json::Reader reader;
    Json::Value value;
    if(reader.parse(test,value))
    {
        if(!value["id"].isNull())
        {
            cout << value["id"].asInt() << endl;
            cout << value["name"].asString()<< endl;
        }
    }
    return 0;
}

编译

g++ -o test test.cpp -ljsoncpp

结果

./test
1
kurama

参考:http://www.cnblogs.com/mydomain/archive/2011/11/08/2241369.html

转载于:https://www.cnblogs.com/Leo-Forest/archive/2012/09/12/2682300.html

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!