Linux下Json-c库的配置和使用

一:配置

 

1,下载:json-c-0.9.tar.gz

2,解压:tar zxvf json-c-0.9.tar.gz

3,切换到json-c 文件夹,执行以下命令

 

cd json-c-0.9/  
# ./configure  
# make  
# make install  

 在非root用户下,make install 出错。所以我切换到root用户。

4,查看是否编译正确

在目录/usr/local/include/json/下有如下文件:

json.h
bits.h
debug.h
linkhash.h
arraylist.h
printbuf.h
json_util.h
json_object.h
json_object_private.h
json_tokener.h

在目录/usr/local/lib/下有如下文件:

libjson.so.0.0.1
libjson.so.0 -> libjson.so.0.0.1
libjson.so -> libjson.so.0.0.1
libjson.la
libjson.a

 5,在/etc/ld.so.conf文件中添加此lib目录

include /usr/local/lib

6,执行ldconfig或/sbin/ldconfig 或者更改环境变量export LD_LIBRARY_PATH = /usr/local/lib

二:编译

 testJson.cpp

#include <iostream>
#include <string>
#include "json.h"
using namespace :: std;

int main(int argc, char **argv)
{
        json_object *new_obj;

        string str="{\"Lon\":\"121.42205\",\"Lat\":\"31.32118\"}";
        const char *p=str.c_str();
         new_obj = json_tokener_parse(p);
        
         cout<<json_tokener_parse(p)<<endl;

        if (is_error(new_obj)) {
        	if (new_obj==null) {
        	cout<<"No"<<endl;
                return 0;

        } else {
        	cout<<"Yes"<<endl;
                return 1;
      }return 0;
}

 编译

g++ -ljson -I/usr/local/include/json/ -L/usr/local/lib/ testJson.cpp

 

 

 

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在交叉编译环境下编译 json-c ,你需要进行以下步骤: 1. 准备交叉编译工具链:根据你的目标平台,获取相应的交叉编译工具链。这包括交叉编译器、交叉编译的和头文件等。 2. 设置环境变量:将交叉编译工具链的路径添加到系统的环境变量中,以便构建过程可以找到正确的工具。 3. 获取 json-c 源代码:从 json-c 的官方仓(https://github.com/json-c/json-c)下载最新的源代码包,或者使用 Git 克隆仓。 4. 创建交叉编译目录:在源代码目录之外创建一个新的目录,用于进行交叉编译。这样可以保持源代码目录的干净和可重用性。 5. 配置交叉编译参数:进入交叉编译目录,并运行以下命令来配置 json-c 的构建过程: ``` <path_to_jsonc_source>/configure --host=<target_architecture> --prefix=<install_directory> ``` `<path_to_jsonc_source>` 是 json-c 源代码的路径,`<target_architecture>` 是目标平台的架构(如 arm-linux-gnueabihf),`<install_directory>` 是你希望安装 json-c 的路径。 6. 编译和安装:运行以下命令来编译和安装 json-c : ``` make make install ``` 7. 导入:将编译好的 json-c 和头文件复制到你的目标平台上,并在交叉编译环境中配置正确的搜索路径。 请注意,具体的步骤和命令可能会因你的目标平台和工具链而有所不同。在进行交叉编译时,请参考相关文档和交叉编译工具链的说明来调整上述步骤。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值