工具学习_Conan 安装第三方库

1. conan 安装

使用 pip 的方式安装 conan,首先确定 python 和 pip 已经安装:

复制代码
python3 --version
pip3 --version

之后通过 pip 安装 conan:

复制代码
pip3 install conan

~/.local/bin 目录添加到 PATH 环境变量中:

复制代码
vim ~/.bashrc
export PATH=$HOME/.local/bin:$PATH
source ~/.bashrc
echo $PATH

验证 conan 是否安装成功:

复制代码
conan --version

2. 二进制文件编译

使用 conan profile detect 自动生成默认构建配置:

复制代码
conan profile detect

修改默认配置:

复制代码
vim ~/.conan2/profiles/default

[settings]
compiler=gcc
compiler.version=9
compiler.libcxx=libstdc++11
compiler.cppstd=gnu17
os=Linux
arch=x86_64
build_type=Release

执行完该命令后,运行 conan install

复制代码
conan install . --build=missing

二进制文件的被缓存到 .conan2 目录中,具体位置参考 conan_toolchain.cmake:

复制代码
cat build/Release/generators/conan_toolchain.cmake

list(PREPEND CMAKE_LIBRARY_PATH "/home/xxx/.conan2/p/b/7bitc1ed0d9a054923/p/lib" "/home/xxx/.conan2/p/taocp27097aa57be5d/p/lib")

检查生成的二进制文件:

复制代码
ls /home/xxx/.conan2/p/b/7bitc1ed0d9a054923/p/lib

lib7bitConf.so  lib7bitConf.so.1.2.0

file /home/xxx/.conan2/p/b/7bitc1ed0d9a054923/p/lib/lib7bitConf.so.1.2.0

/home/xxx/.conan2/p/b/7bitc1ed0d9a054923/p/lib/lib7bitConf.so.1.2.0: ELF 64-bit LSB shared object, x86-64, version 1 (GNU/Linux), dynamically linked, BuildID[sha1]=4cee02ecf239c2b171c46401ef3e29e5492c227c, not stripped

该文件 /home/xxx/.conan2/p/b/7bitc1ed0d9a054923/p/lib/lib7bitConf.so.1.2.0 是一个 Linux 系统上的 64 位共享库文件,使用动态链接,并包含完整的调试信息。这种文件通常用于与其他程序链接运行,同时方便开发和调试。

某些二进制文件的依赖项没有成功编译

相关推荐
lingggggaaaa2 分钟前
小迪安全v2023学习笔记(七十八讲)—— 数据库安全&Redis&CouchDB&H2database&未授权&CVE
redis·笔记·学习·算法·安全·网络安全·couchdb
Source.Liu5 分钟前
【Python基础】 13 Rust 与 Python 注释对比笔记
开发语言·笔记·python·rust
qq_1955516917 分钟前
代码随想录70期day3
开发语言·python
XXYBMOOO22 分钟前
Qt UDP 通信类详解与实现
开发语言·网络·c++·qt·网络协议·ui·udp
pusue_the_sun27 分钟前
C语言强化训练(12)
c语言·开发语言·算法
JosieBook37 分钟前
【SpringBoot】21-Spring Boot中Web页面抽取公共页面的完整实践
前端·spring boot·python
Jayyih1 小时前
嵌入式系统学习Day29(tcp)
网络·学习·tcp/ip
UrbanJazzerati1 小时前
掌握 xlwings 的 used_range:高效处理 Excel 数据区域
python·面试·excel
counting money1 小时前
JAVA泛型基础
java·开发语言·eclipse
007php0071 小时前
Go语言面试:传值与传引用的区别及选择指南
java·开发语言·后端·算法·面试·golang·xcode