首页 前端知识 【C 】Ubuntu安装jsoncpp

【C 】Ubuntu安装jsoncpp

2024-09-28 23:09:58 前端知识 前端哥 366 37 我要收藏

00. 目录

文章目录

    • 00. 目录
    • 01. JSON概述
    • 02. JSON基本结构
    • 03. JSONCPP源码下载
    • 04. JSONCPP安装方式一
    • 05. JSONCPP安装方式二
    • 06. 附录

01. JSON概述

JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。它使得人们很容易的进行阅读和编写。同时也方便了机器进行解析和生成。它是基于 JavaScript Programming Language , Standard ECMA-262 3rd Edition - December 1999 的一个子集。 JSON采用完全独立于程序语言的文本格式,但是也使用了类C语言的习惯(包括C, C++, C#, Java, JavaScript, Perl, Python等)。这些特性使JSON成为理想的数据交换语言。

在这里插入图片描述

JSON(JavaScript Object Notation)是一种轻量级的数据交换格式。它是基于 JavaScript 的一种字符串格式,独立于编程语言,可以用来存储和传输数据。JSON 数据可以是简单的数字、字符串、数组或其他复杂数据类型。它通常用于 Web 应用程序中,用于存储和传输数据,也可以用于其他应用程序中。 JSON 格式由一系列特定的字符组成,这些字符称为“键”和“值”。键通常是字符串,值可以是字符串、数字、布尔值、数组或另一个 JSON 对象。在 JSON 中,数组和对象是通过花括号 [] 和 {} 包裹起来的,每个元素由逗号 , 分隔。 JSON 具有以下特点:

  • 简单易读:JSON 数据可以用简单的字符串表示,非常容易读取和编写。
  • 数据结构灵活:JSON 数据可以是各种数据类型,包括数字、字符串、数组和对象等。
  • 独立于语言:JSON 数据可以用于不同的编程语言,只需要一个 JSON 解析器。
  • 可读性高:JSON 数据可以被人类直接读取,不需要转换为其他格式。

JSON (JavaScript Object Notation) is a lightweight data interchange format that is easy for humans to read and write, and easy for machines to parse and generate. JSON is a widely used format for storing and exchanging data between web servers and clients. In JSON, data is represented as plain text in a human-readable format, with the structure of the data represented by a set of key-value pairs within the text. Each key-value pair is enclosed in curly braces {} and separated by a colon :.

02. JSON基本结构

JSON基于两种结构:

  • “名称/值”对的集合(A collection of name/value pairs)。不同的编程语言中,它被理解为对象(object),纪录(record),结构(struct),字典(dictionary),哈希表(hash table),有键列表(keyed list),或者关联数组 (associative array)。
  • 值的有序列表(An ordered list of values)。在大部分语言中,它被实现为数组(array),矢量(vector),列表(list),序列(sequence)。

这些都是常见的数据结构。目前,绝大部分编程语言都以某种形式支持它们。这使得在各种编程语言之间交换同样格式的数据成为可能。

03. JSONCPP源码下载

GitHub下载:https://github.com/open-source-parsers/jsoncpp

CSDN下载:jsoncpp-master.rar

Ubuntu中通过命令下载

deng@local:~$ wget https://github.com/open-source-parsers/jsoncpp/archive/master.zip -O jsoncpp-master.zip

deng@local:~$ unzip jsoncpp-master.zip

04. JSONCPP安装方式一

在Linux系统中,可以通过包管理器安装jsoncpp库。以下是使用apt在基于Debian的系统(如Ubuntu)中安装jsoncpp的命令:

deng@local:~$ sudo apt update

deng@local:~$ sudo apt install libjsoncpp-dev

05. JSONCPP安装方式二

安装cmake工具

deng@local:~/tools$ sudo apt install cmake 

解压jsoncpp

deng@local:~/car$ unzip jsoncpp-master.zip 

进入jsoncpp-master目录

deng@local:~/car$ cd jsoncpp-master/

创建json_install目录

deng@local:~/car/jsoncpp-master$ mkdir ~/tools/json_install -p
deng@local:~/car/jsoncpp-master$ 

创建build目录和进入build目录

deng@local:~/car/jsoncpp-master$ mkdir build
deng@local:~/car/jsoncpp-master$ cd build/

执行cmake命令

# -DCMAKE_INSTALL_PREFIX=/home/deng/tools/json_install 指定安装目录
deng@local:~/car/jsoncpp-master/build$ cmake -DCMAKE_INSTALL_PREFIX=/home/deng/tools/json_install  ../

编译

deng@local:~/car/jsoncpp-master/build$ make -j4

安装

deng@local:~/car/jsoncpp-master/build$ make install

查看是否安装成功

deng@local:~/tools$ ls
curl_install  json_install
deng@local:~/tools$ tree json_install/
json_install/
├── include
│   └── json
│       ├── allocator.h
│       ├── assertions.h
│       ├── config.h
│       ├── forwards.h
│       ├── json_features.h
│       ├── json.h
│       ├── reader.h
│       ├── value.h
│       ├── version.h
│       └── writer.h
└── lib
    ├── cmake
    │   └── jsoncpp
    │       ├── jsoncppConfig.cmake
    │       ├── jsoncppConfigVersion.cmake
    │       ├── jsoncpp-namespaced-targets.cmake
    │       ├── jsoncpp-targets.cmake
    │       └── jsoncpp-targets-release.cmake
    ├── libjsoncpp.a
    ├── libjsoncpp.so -> libjsoncpp.so.25
    ├── libjsoncpp.so.1.9.5
    ├── libjsoncpp.so.25 -> libjsoncpp.so.1.9.5
    ├── objects-Release
    │   └── jsoncpp_object
    │       ├── json_reader.cpp.o
    │       ├── json_value.cpp.o
    │       └── json_writer.cpp.o
    └── pkgconfig
        └── jsoncpp.pc

8 directories, 23 files
deng@local:~/tools$ 

06. 附录

转载请注明出处或者链接地址:https://www.qianduange.cn//article/18709.html
评论
发布的文章

jQuery QueryBuilder 教程

2024-10-29 23:10:44

水球图 及各种参数设置

2024-10-29 23:10:13

大家推荐的文章
会员中心 联系我 留言建议 回顶部
复制成功!