Ubuntu20.04安裝使用jsoncpp、json-c庫的方法實(shí)例
1.更新源
sudo apt-get update
2.安裝
sudo apt-get install libjsoncpp-dev
3.檢查安裝是否成功
ls /usr/include/jsoncpp/json/
4.使用
使用的時(shí)候包含頭文件#include <jsoncpp/json/json.h>
編譯的時(shí)候鏈接庫g++ -ljsoncpp
5.同樣步驟安裝json-c
sudo apt install libjson-c-dev ls /usr/include/json-c/
使用的時(shí)候包含頭文件#include <json-c/json.h>
編譯的時(shí)候鏈接庫g++ -ljson-c
附:ubuntu下libjson-c庫的使用問題備忘
首先安裝libjson的c庫
#apt-get install libjson0-dev libjson0
安裝好后查看/usr/include/json下是否有頭文件,有就對了!
gcc -o json-demo -g json-demo.c -std=c99 -I/usr/include/json -L/usr/lib/i386-linux-gnu/ -ljson
注意:
1、json-demo和json-demo.c參數(shù)需要在前面,不能在后面,見錯(cuò)誤1
2、需要就愛如-std=c99,代碼中需要,也可以用-std=gnu99,見錯(cuò)誤2
3、-I是json的頭文件的路徑
4、-L是json庫所在位置,這個(gè)路徑可能根據(jù)系統(tǒng)不同而不同,建議用find / -name "libjson*"找到位置
5、-ljson不可省略,盡量放在最后,沒有這個(gè)參數(shù)會出現(xiàn)錯(cuò)誤1的現(xiàn)象
錯(cuò)誤1:
jack@ubuntu:~/json-c$ gcc -I/usr/include/json -L/usr/lib/i386-linux-gnu/ -ljson -std=gnu99 -o json-demo -g json-demo.c
/tmp/ccaITRtr.o: In function `GetValByKey':
/home/jack/json-c/json-demo.c:13: undefined reference to `json_object_object_get'
/home/jack/json-c/json-demo.c:16: undefined reference to `json_object_get_type'
/home/jack/json-c/json-demo.c:20: undefined reference to `json_object_get_string'
/home/jack/json-c/json-demo.c:23: undefined reference to `json_object_get_int'
/tmp/ccaITRtr.o: In function `main':
/home/jack/json-c/json-demo.c:39: undefined reference to `json_object_new_string'
/home/jack/json-c/json-demo.c:41: undefined reference to `json_object_get_string'
/home/jack/json-c/json-demo.c:43: undefined reference to `json_object_to_json_string'
******
錯(cuò)誤2:沒有加-std=99參數(shù)的錯(cuò)誤
jack@ubuntu:~/json-c$ gcc -o json-demo -g json-demo.c -I/usr/include/json -L/usr/lib/i386-linux-gnu/ -ljson
json-demo.c: In function ‘main’:
json-demo.c:87:2: error: ‘for’ loop initial declarations are only allowed in C99 mode
json-demo.c:87:2: note: use option -std=c99 or -std=gnu99 to compile your code
總結(jié)
到此這篇關(guān)于Ubuntu20.04安裝使用jsoncpp、json-c庫的文章就介紹到這了,更多相關(guān)Ubuntu安裝使用jsoncpp、json-c庫內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
C/C++實(shí)現(xiàn)Windows注冊表的基本操作
Windows注冊表(Registry)是Windows操作系統(tǒng)中用于存儲系統(tǒng)配置信息、用戶設(shè)置和應(yīng)用程序數(shù)據(jù)的一個(gè)集中式數(shù)據(jù)庫,本文主要為大家介紹了C++對注冊表的基本操作,感興趣的小伙伴可以了解下2023-11-11FFmpeg獲取網(wǎng)絡(luò)攝像頭數(shù)據(jù)解碼
這篇文章主要為大家詳細(xì)介紹了FFmpeg獲取網(wǎng)絡(luò)攝像頭數(shù)據(jù)解碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-06-06C語言中隊(duì)列的結(jié)構(gòu)和函數(shù)接口的使用示例
隊(duì)列只允許一端進(jìn)行插入數(shù)據(jù)操作,在另一端進(jìn)行刪除數(shù)據(jù)操作的特殊線性表,隊(duì)列具有先進(jìn)先出FIFO的性質(zhì);隊(duì)列可用數(shù)組和鏈表 的方法實(shí)現(xiàn),使用鏈表的結(jié)構(gòu)實(shí)現(xiàn)更優(yōu)一些,因?yàn)槿绻褂脭?shù)組節(jié),出隊(duì)列時(shí)刪去首元素需要將整個(gè)數(shù)組前移,效率比較低2023-02-02C++?構(gòu)造函數(shù)學(xué)習(xí)筆記
這篇文章主要為大家介紹了C++?構(gòu)造函數(shù)學(xué)習(xí)筆記,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-10-10C語言數(shù)據(jù)結(jié)構(gòu)實(shí)現(xiàn)鏈表逆序并輸出
這篇文章主要介紹了C語言數(shù)據(jù)結(jié)構(gòu)實(shí)現(xiàn)鏈表逆序并輸出的相關(guān)資料,需要的朋友可以參考下2017-04-04C++ 中的new 和 delete 運(yùn)算符及new和malloc的區(qū)別解析
在C++中,又引出了一個(gè)新玩法:new 和 delete,在C++中,new是用來動態(tài)開辟內(nèi)存的,delete是用來釋放我們所動態(tài)開辟的內(nèi)存C++中的new和delete運(yùn)算符及new和malloc的區(qū)別解析,感興趣的朋友跟隨小編一起看看吧2024-11-11C++17實(shí)現(xiàn)flyweight_factory模板類及使用示例詳解
這篇文章主要為大家介紹了C++17實(shí)現(xiàn)flyweight_factory模板類及使用示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-08-08