CentOS系统安装py3exiv2报错无法找到lboost_python36如何解决?
解决步骤
核心报错原因是pip安装时匹配的boost_python库名称和CentOS系统中实际安装的库名称不匹配,按以下步骤操作即可解决:
方案一:软链接适配(优先尝试)
- 安装全部依赖包
yum install -y exiv2 exiv2-devel boost-python3-devel gcc-c++ python3-devel
- 确认系统中已安装的boost_python3库文件名
ls /usr/lib64 | grep boost_python3
执行后输出通常为libboost_python3.so或对应你的Python版本的名称,如libboost_python36.so(如果已存在可跳过下一步)
- 创建软链接适配pip的查找规则(以Python3.6为例)
ln -s /usr/lib64/libboost_python3.so /usr/lib64/libboost_python36.so
- 清除pip缓存后重新安装
pip3 cache purge python3 -m pip install py3exiv2
方案二:修改源码编译安装(方案一失效时使用)
- 下载py3exiv2源码包
pip3 download py3exiv2 --no-deps
- 解压并进入源码目录
tar zxf py3exiv2-*.tar.gz cd py3exiv2-*
- 编辑
setup.py文件,找到libraries配置项,将其中的boost_python36修改为上一步查到的实际库名(如boost_python3) - 执行本地编译安装
python3 setup.py install
内容的提问来源于stack exchange,提问作者bugZ
相关产品推荐
相关产品推荐

