jsoncpp在linux下的配置

转自 :http://www.cnblogs.com/kingcat/archive/2012/06/14/2549050.html


JSON 官方的解释为:JSON 是一种轻量级的数据传输格式。

关于 JSON 更具体的信息,可参见 JSON 官网:http://www.json.org。

jsoncpp 是比较出名的 C++ JSON 解析库。在 JSON 官网也是首推的。

下载地址为:http://sourceforge.net/projects/jsoncpp版本为jsoncpp-src-0.5.0

下面开始说明配置方法

1、先下载scons:(http://www.scons.org/版本为scons-2.1.0)并解压;

设定环境变量# export MYSCONS=解压的路径

2、scons部署:进入scons解压目录(假定为$MYSCONS),执行python $MYSCONS/setup.py install将scons部署完毕。

3、使用scons编译jsoncpp(版本为jsoncpp-src-0.5.0)

进入jsoncpp解压目录,执行命令:# python $MYSCONS/script/scons.py platform=linux-gcc

现报错 查看路径下 没有scons.py文件
故改为scons,如下. 可能是以前的版本改用命令如下:
# python $MYSCONS/script/scons platform=linux-gcc

将jsoncpp编译,在解压目录jsoncpp-src-0.5.0/libs/linux-gcc-3.4.6下可以看到生成了两个文件

libjson_linux-gcc-4.6.1_libmt.a

libjson_linux-gcc-4.6.1_libmt.so

把.a文件拷贝到/usr/local/lib 目录下,为了方便编译给它改个名字libjsonlib.a

4、将jsoncpp目录下的头文件件拷到自己的工程里就可以使用了。

注意在编译里指定动态链接库的地址。 -ljsonlib

例子代码

#include <iostream>

#include <string>

#include "json/json.h"

int main(void)

{

Json::Value root;

Json::FastWriter fast_writer;

root["REGION_ID"] = "600901";

root["DATA_TOTAL_NUM"] = "456278";

std::cout << fast_writer.write(root) << std::endl;

return 0;

}

输出:{"DATA_TOTAL_NUM":"456278","REGION_ID":"600901"}

相关文章

AJAX是一种基于JavaScript和XML的技术,能够使网页实现异步交...
在网页开发中,我们常常需要通过Ajax从后端获取数据并在页面...
在前端开发中,经常需要循环JSON对象数组进行数据操作。使用...
AJAX(Asynchronous JavaScript and XML)是一种用于创建 We...
AJAX技术被广泛应用于现代Web开发,它可以在无需重新加载页面...
Ajax是一种通过JavaScript和HTTP请求交互的技术,可以实现无...