所以要先安装Python
ubuntu中输入命令
1 //安装 Python 发布版本,dev包必须安装,很多用pip安装包都需要编译
2 sudo apt-get install python2.7 python2.7-dev
python 安装完成后 安装Json库
1、下载JsonCpp
http://sourceforge.net/projects/jsoncpp/files/
2、下载scons
http://sourceforge.net/projects/scons/files/scons/2.1.0/scons-2.1.0.tar.gz/download
3、在ubuntu中建立以目录 将scons-2.1.0.tar.gz 和 jsoncpp-src-0.5.0.tar.gz 压缩包拷到里面
我是在home下建立的hfc目录 将文件放到里面
解压scons-2.1.0.tar.gz
tar -zvxf scons-2.1.0.tar.gz
4、进入到解压目录scons-2.1.0下面,执行命令:
sudo python setup.py install
在最后三行的installed 可以明显看出Python编译scons后的文件在
/usr/local/lib/scons-3.0.0
/usr/local/bin
/usr/local/man/man1
5、解压jsconcpp
tar -zvxf jsoncpp-src-0.5.0.tar.gz
我的两个文件都解压到了自己 创建的目录 /home/hfc/dir 里面了
6、进入到 jsoncpp-src-0.5.0 解压目录下,执行命令:
sudo python scons platform=linux-gcc
或者 sudo scons platform=linux-gcc
此时你可能遇到下面这样的问题
阅读错误信息可以知道是语法错误 原因是scons被编译过后再执行该句是Python2 和3 不同的问题 并且scons 的路径没有添加
我这里解决的办法是用Python2 进行编译 因为2和3 一些语法不同所以讲报错的地方print改成2的语法
可以看到是jsoncpp-src-0.5.0/SConstruct 里面的语法问题
所以我将vim SConstruct 将print后面的内容加上()
然后再将scons的路径在命令行加上 并指明Python2
sudo python2 /usr/local/bin/scons platform=linux-gcc
可以看到环境已经配置完成
此时可以再jsoncpp-src-0.5.0中看到 libs目录
7、将/jsoncpp-src-0.5.0/include/目录下的json文件夹拷贝到/usr/include/
8、将jsoncpp-src-0.5.0/libs/linux-gcc-4.9.1/目录下的libjson_linux-gcc-4.9.1_libmt.a 和libjson_linux-gcc-4.9.1_libmt.so 拷贝到/usr/lib/下,并为了方便使用,将 其名为libjson.a 和libjson.so
9.测试样例
//json.cpp
#include
#include
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<