Linux下使用CONAN2管理C++包依赖
  0eGysyk4Lrwg 2023年11月02日 88 0

(目录)


一、下载及安装

首先安装python3,然后

# 安装
$ pip install conan
# 升级
$ pip install conan --upgrade

二、使用

1. CMakeLists.txt

cmake_minimum_required(VERSION 3.15)
project(compressor C)

find_package(ZLIB REQUIRED)

add_executable(${PROJECT_NAME} src/main.c)
target_link_libraries(${PROJECT_NAME} ZLIB::ZLIB)

如何确定库的名字? 首先访问https://conan.io/center,然后搜索库。 image.png

image.png

找到描述库依赖的python代码,然后找到

def package_info(self):
    self.cpp_info.set_property("cmake_file_name", "ZLIB")
    self.cpp_info.set_property("cmake_target_name", "ZLIB::ZLIB")

find_package()中的库名就是上边的cmake_file_name,而target_link_libraries()中的依赖就是上边的cmake_target_name。

2. conanfile.txt

[requires]
# 需要安装的依赖库
zlib/1.2.11

[generators]
CMakeDeps
CMakeToolchain

3. 第一次使用时生成conan profile

$ conan profile detect --force

生成的profile文件为~/.conan2/profiles/default

4. 安装依赖库

$ conan install . --output-folder=build --build=missing

5. 编译

$ cmake -S . -B build -DCMAKE_TOOLCHAIN_FILE=conan_toolchain.cmake -DCMAKE_BUILD_TYPE=Release
$ cmake --build build

三、参考URL

  • 库查找中心 CONAN Center:https://conan.io/center
  • CONAN2手册:https://docs.conan.io/2/tutorial/consuming_packages/build_simple_cmake_project.html
【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
  gBkHYLY8jvYd   2023年11月19日   27   0   0 #includecic++
  eVzzROmRiJco   2023年11月19日   21   0   0 linux
  ZXL8ALkrtBPG   2023年12月06日   24   0   0 字面量c++
  lh6O4DgR0ZQ8   2023年11月24日   18   0   0 cii++c++
  zLxnEsMLk4BL   2023年11月19日   31   0   0 变量名字符串bclinux
  gBkHYLY8jvYd   2023年11月19日   27   0   0 十进制高精度c++
  eVzzROmRiJco   2023年11月19日   20   0   0 内核链表linux
  gBkHYLY8jvYd   2023年12月11日   20   0   0 cic++最小值
  gBkHYLY8jvYd   2023年11月19日   25   0   0 测试点cic++
0eGysyk4Lrwg