c++导入外部的依赖开源库

使用git submodule

git submodule add https://github.com/username/subproject.git

使用cmake导入

FetchContent

  • 实际使用的话,有下面的三点总结
    • 关于FetchContent,若并需要修改 配置以及编译的默认值的时候,推荐首要使用该方法。
include(FetchContent)

set(JSON_C_TAG json-c-0.16-20220414)
set(JOSN_C_URL https://github.com/json-c/json-c.git)

FetchContent_Declare(
    json_c
    GIT_REPOSITORY ${JOSN_C_URL}
    GIT_TAG ${JOSN_C_TAG}
)

FetchContent_MakeAvailable(json_c)
FetchContent_GetProperties(
  json_c
  SOURCE_DIR JSON_C_SRC_DIR
  BINARY_DIR JSON_C_BIN_DIR

)

ExternalProject

  • 关于ExternalProject, 若需要修改配置以及编译的默认值的时候,推荐使用该方法。这个方法有点烦的地方是,关于其INSTALL_COMMAND的配置,因为有的情况下我们并不需要去install,且对于cmake 中的install支持稍微有点问题, 且由于该过程是在build的时候,完成clone 及配置,所以最上层的cmake配置不能完整传递下去。
# This module installs paho mqtt as an external dependency
# Depends on openSSL

include(ExternalProject)
find_package(Git REQUIRED)
find_package(PkgConfig REQUIRED)
# pkg_search_module(OPENSSL REQUIRED openssl)

ExternalProject_add(
    pahomqtt
    GIT_REPOSITORY "https://github.com/eclipse/paho.mqtt.c.git"
    GIT_TAG "v1.3.10"
    UPDATE_COMMAND ""
    PATCH_COMMAND ""
    SOURCE_DIR "${CMAKE_BINARY_DIR}/paho-src"
    CMAKE_ARGS -DPAHO_WITH_SSL=TRUE -DCMAKE_INSTALL_PREFIX=${CMAKE_BINARY_DIR}/paho-build
)

include_directories(${CMAKE_BINARY_DIR}/paho-build/include)
message("TuT   "${CMAKE_BINARY_DIR}/paho-build/include)
include_directories(${CMAKE_BINARY_DIR}/paho-src)
link_directories(${CMAKE_BINARY_DIR}/paho-build/lib)
  • 9
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: zip是一种常见的文件压缩格式,而zip则是一种用于操作zip文件的开源。使用zip可以方便地创建、读取和修改zip文件。 首先,我们可以使用zip来创建zip文件。通过将要被压缩的文件或目录添加到zip的对象中,我们可以将它们压缩到一个zip文件中。这样可以将一组相关的文件打包成一个文件,便于传输和存储。 其次,我们可以使用zip来读取zip文件。zip提供了读取zip文件中文件信息的功能,比如文件名、大小、压缩比率等等。通过读取zip文件的信息,我们可以了解文件的内容和结构,从而根据需要进行进一步的操作。 另外,我们还可以使用zip来修改zip文件。比如,我们可以通过zip向一个已存在的zip文件中添加、删除或更新文件。这样可以对zip文件进行定制,以满足实际的需求。 总的来说,使用zip可以方便地操作zip文件,实现文件的压缩和解压缩,以及对已存在的zip文件进行修改。这在很多场景下都是非常有用的,比如文件传输、数据备份、软件更新等。 ### 回答2: c 是一种编程语言,开发者可以使用开源zip来处理压缩文件。zip是一个流行的开源,提供了一系列可以用来创建、读取和操作zip格式文件的功能。 使用zip首先需要导入相关的文件。然后,可以使用中的函数来创建一个zip文件,将文件添加到压缩文件中,或者从压缩文件中提取文件等操作。 例如,使用zip可以轻松地创建一个包含多个文件的压缩文件。可以使用中的函数打开一个新的zip文件,然后通过循环遍历文件列表,将每个文件添加到压缩文件中。 另外,zip也提供了读取和提取zip文件的功能。可以使用中的函数来打开已有的zip文件,遍历压缩文件中的所有文件,并将它们提取到指定的目录中。 使用zip还可以进行一些其他的操作,如修改压缩文件中的文件,删除文件,设置压缩文件的密码等。zip提供了简洁易用的接口,使得处理压缩文件变得更加方便。 总而言之,c 使用zip开源可以方便地处理压缩文件。无论是创建、读取、提取还是修改压缩文件,zip都提供了丰富的功能和简洁的接口,使得处理压缩文件变得轻松而高效。 ### 回答3: zip是一种常用的文件压缩格式,而zip则是一种可以用来处理zip文件的开源。使用zip可以实现对zip文件的解压缩和压缩操作。 对于解压缩操作,可以使用zip提供的函数读取zip文件并提取其中的文件或文件夹,然后将其解压到指定的目录中。这样可以方便地从zip文件中获取需要的文件或数据。 而对于压缩操作,可以使用zip提供的函数将指定的文件或文件夹打包成zip文件。这个过程可以选择性地对文件进行压缩、设定密码以及设置其他的压缩选。 使用zip开源的好处在于它可以帮助我们简化处理zip文件的过程。相较于手动编写处理zip文件的代码,使用zip可以提供更高效、更简洁的处理方法。同时,由于zip开源的,我们也可以在遇到问题时查看的源码,从而更好地理解和解决问题。 总结来说,使用zip开源可以方便地实现对zip文件的解压缩和压缩操作,提高处理效率和简化代码编写,并且具有开源的优点,使得我们更好地利用和学习这个

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值