C++项目引入依赖_例jsoncpp(MAC/CLion)

2023-12-14 18:18:08

1、git clone jsoncpp到本地

jsoncpp github地址:https://github.com/open-source-parsers/jsoncpp/tree/master

2、编译生成 lib 文件

进入jsoncpp文件目录

# 进入 jsoncpp 目录,创建一个新的子目录来存放编译输出:
mkdir build && cd build
# 使用 CMake 来生成 Makefile:
cmake ..
# 编译 jsoncpp 库:
make
# 安装 jsoncpp 库:
sudo make install

执行上述步骤, jsoncpp 编译成了 lib。

接下来,在需要导入#include 语句在 C 或 C++ 代码中包含 jsoncpp 库,并使用 jsoncpp 提供的 API 来处理 JSON 数据。

3、导入lib文件至项目中

将 jsoncpp 项目中的 include 文件夹和 build/lib 中的 lib文件,复制粘贴至项目里
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

cmakelist.txt 文件中,导入头文件和lib文件,配置 include_directories() 和 target_link_libraries() 导入依赖。

cmake_minimum_required(VERSION 3.26)
project(Day5)

set(ROOT  ${CMAKE_CURRENT_SOURCE_DIR})
set(JSON_INCLUDE "${ROOT}/third-party/json/include")

set(CMAKE_CXX_STANDARD 17)

file(GLOB_RECURSE JSON_MODULE_LIB "${ROOT}/third-party/json/lib/libjsoncpp.25.dylib")

include_directories(
        ${JSON_INCLUDE}
)
add_executable(Day5 main.cpp)

target_link_libraries(Day5
    ${JSON_MODULE_LIB}
)

4、使用实例

#include <iostream>
#include <json/json.h>


static void str_split_test() {
    std::string redis_value = R"({"name": "lebron james", "age": 33, "height": 1.91, "weight": 92, "team": "lakers"})";
    Json::Value root;
    Json::Reader reader;
    if (!reader.parse(redis_value, root)) {
        std::cout << "parse error" << std::endl;
    }
    Json::Value value = root["name"];
    std::cout << value << std::endl;
}

int main() {
    str_split_test();
    return 0;
}

文章来源:https://blog.csdn.net/weixin_40571937/article/details/134998630
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。