下載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
通過 生成文件
libjson_linux-gcc-4.4.4_libmt.a
libjson_linux-gcc-4.4.4_libmt.so
使用時 需要講頭文件 即 include下的文件復制到工程下
使用示例
#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;
}
編譯 為了方便編譯 我將靜態庫文件命名為libjson.a
g++ -o main main.cpp -L. -ljson