Ubuntu20.04安裝使用jsoncpp、json-c庫(kù)的方法實(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í)候鏈接庫(kù)g++ -ljsoncpp
5.同樣步驟安裝json-c
sudo apt install libjson-c-dev ls /usr/include/json-c/

使用的時(shí)候包含頭文件#include <json-c/json.h>編譯的時(shí)候鏈接庫(kù)g++ -ljson-c
附:ubuntu下libjson-c庫(kù)的使用問(wèn)題備忘
首先安裝libjson的c庫(kù)
#apt-get install libjson0-dev libjson0
安裝好后查看/usr/include/json下是否有頭文件,有就對(duì)了!
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ù)需要在前面,不能在后面,見(jiàn)錯(cuò)誤1
2、需要就愛(ài)如-std=c99,代碼中需要,也可以用-std=gnu99,見(jiàn)錯(cuò)誤2
3、-I是json的頭文件的路徑
4、-L是json庫(kù)所在位置,這個(gè)路徑可能根據(jù)系統(tǒng)不同而不同,建議用find / -name "libjson*"找到位置
5、-ljson不可省略,盡量放在最后,沒(méi)有這個(gè)參數(shù)會(huì)出現(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:沒(méi)有加-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庫(kù)的文章就介紹到這了,更多相關(guān)Ubuntu安裝使用jsoncpp、json-c庫(kù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
C++實(shí)現(xiàn)LeetCode(137.單獨(dú)的數(shù)字之二)
這篇文章主要介紹了C++實(shí)現(xiàn)LeetCode(137.單獨(dú)的數(shù)字之二),本篇文章通過(guò)簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下2021-07-07
DEV C++自動(dòng)補(bǔ)全文件頭的設(shè)置操作教程
Dev-C++ 是一款輕量級(jí)的集成開(kāi)發(fā)環(huán)境 (IDE),主要用于 C 和 C++ 的程序編寫(xiě),它提供了基本的功能來(lái)幫助開(kāi)發(fā)者更高效地工作,其中包括文件頭的自動(dòng)補(bǔ)全功能,本文就給大家介紹了DEV C++自動(dòng)補(bǔ)全文件頭的設(shè)置操作教程,需要的朋友可以參考下2025-04-04
Mingw64編譯wxWidgets 3.0.2常見(jiàn)錯(cuò)誤分析
這篇文章主要介紹了Mingw64編譯wxWidgets 3.0.2常見(jiàn)錯(cuò)誤分析,需要的朋友可以參考下2016-11-11
實(shí)現(xiàn)posix消息隊(duì)列示例分享
這篇文章主要介紹了實(shí)現(xiàn)posix消息隊(duì)列示例,學(xué)習(xí)記錄鎖,線程互斥量,線程條件變量,內(nèi)存映射,信號(hào),線程的綜合應(yīng)用,需要的朋友可以參考下2014-02-02
C++實(shí)現(xiàn)LeetCode(11.裝最多水的容器)
這篇文章主要介紹了C++實(shí)現(xiàn)LeetCode(11.裝最多水的容器),本篇文章通過(guò)簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下2021-07-07
C++實(shí)現(xiàn)LeetCode(14.最長(zhǎng)共同前綴)
這篇文章主要介紹了C++實(shí)現(xiàn)LeetCode(14.最長(zhǎng)共同前綴),本篇文章通過(guò)簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下2021-07-07

