json linux下 安装配置以及使用 整理



http://blog.sina.com.cn/s/blog_70508e7f01015lkz.html

1.下载scons 在这里http://www.scons.org/ 

解压  tar -zxvf scons-2.0.1.tar.gz

设定环境变量
# export MYSCONS=解压的路径
# export SCONS_LIB_DIR=$MYSCONS/engine
开始编译jsoncpp
# cd jsoncpp-src-0.5.0
百度到的结果有一些错误 也可能是早期的版本
是如下的结果
# python $MYSCONS/script/scons.py platform=linux-gcc
经过测试 发现报错 查看路径下 没有scons.py文件
故改为scons,如下
# python $MYSCONS/script/scons platform=linux-gcc

2.json 下载:http://sourceforge.net/projects/jsoncpp/

  1. #tar -zxf scons-2.1.0.tar.gz  
  2. #cd scons-2.1.0 
  3. #python setup.py install 
  4. #tar -zxf jsoncpp-src-0.5.0.tar.gz  
  5. #cd jsoncpp-src-0.5.0 
  6. #scons platform=linux-gcc 
  7. #mv libs/linux-gcc-4.1.2/libjson_linux-gcc-4.1.2_libmt.so /lib 
  8. #mv include/json/ /usr/include/ 
  9. #ldconfig  
  10. #./bin/linux-gcc-4.1.2/test_lib_json  
  11. Testing ValueTest/size: OK 
  12. Testing ValueTest/isObject: OK 
  13. Testing ValueTest/isArray: OK 
  14. Testing ValueTest/isBool: OK 
  15. Testing ValueTest/isInt: OK 
  16. Testing ValueTest/isUInt: OK 
  17. Testing ValueTest/isDouble: OK 
  18. Testing ValueTest/isString: OK 
  19. Testing ValueTest/isNull: OK 
  20. All 9 tests passed 

3.json入门指南:

http://www.ibm.com/developerworks/cn/web/wa-lo-json/

4.使用示例

新建main.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++ jsoncpptest.cpp -I/root/software/jsoncpp-src-0.5.0/include -L/root/software/json    cpp-src-0.5.0/libs/linux-gcc-4.4.5/ -ljson_linux-gcc-4.4.5_libmt
编译成功
./a.out时错误,说是找不到.so文件,解决办法有:
1.将jsoncpp编译后的.so文件拷贝到当前项目目录中
2.编辑/etc/ld.so.conf文件,将.so文件所在的路径加进去,同时加入/usr/local/lib
然后用命令/sbin/ldconfig -v对.so的配置进行更新


5.JsonCpp

http://www.cnblogs.com/ggjucheng/archive/2012/01/03/2311107.html




你可能感兴趣的:(linux,json)