1.下载json-c-0.9.tar.gz,解压并进入json-c-0.9,执行标准安装
#./configure
#make
#make install
默认会安装在目录/usr/local/include,/usr/local/lib下面,配置信息位于/usr/local/lib/pkgconfig/json.pc中
2.如果运行时提示:error while loading shared libraries: libjson.so.0: cannot open shared object file: No such file or directory
解决方法:
#vim /etc/ld.so.config
在下面添加一行
/usr/local/lib/libjson.so.0
保存退出,执行
#ldconfig
然后查看
#ldconfig -v
会在列表中出现libjson的库,列表可能太多,可以执行
#ldconfig -v | grep json
3.再次运行成功。
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
1. 如果期望从一个object中查询. 那么, 你要保证传入的json_object是一个object. 否则, 崩溃
如下代码:
json_object *tmpobject, *new_obj;
new_obj = json_object_new_string("xxxxx");
printf("准备get\n");
tmpobject = json_object_object_get(new_obj, "a");
printf("getover\n");
这样在json_object_object_get就会崩溃.
2. 此库的使用, 其代码写的并不严谨. 比如 json_tokener_parse 函数. 其json_tokener_new的返回结果并没有检查是否有效. 其它地方是否有类似的,不得而知.
因此, 建议此库的使用上面要多谨慎.