[[IT知识]] 解决CentOS上Pillow库依赖问题:libjpeg.so.9缺失的终极指南

[复制链接]
查看: 40|回复: 0
发表于 2025-2-10 09:40:00 | 显示全部楼层 | 阅读模式
易博V9下载

解决CentOS上Pillow库依赖问题:libjpeg.so.9缺失的终极指南

作者:matrix

被围观: 329 次

发布时间:2024-06-25

分类:

使用Python的Pillow库(PIL)处理图像时,可能会遇到库依赖问题,例如缺少libjpeg.so.9文件

  1. from PIL import Image
  2. Traceback (most recent call last):
  3. File " stdin ", line 1, in module
  4. File "/home/work/.local/lib/python3.7/site-packages/PIL/Image.py", line 103, in module
  5. from . import _imaging as core
  6. ImportError: libjpeg.so.9: cannot open shared object file: No such file or directory
复制代码

正常来说是安装libjpeg库来解决 apt-get install libjpeg-dev / yum install libjpeg-devel 。但是我这台 CentOS机器之前有这个依赖,还有就是网络问题很麻烦

查找现有的libjpeg库文件

  1. sudo find / -name "libjpeg.so*" 2>;/dev/null
复制代码

比如找到 /home/work/.jjjjbbbo/lib/libjpeg.so.9

方法 1.更新动态链接配置

软链接到系统库目录,并更新动态链接器配置

  1. sudo ln -s /home/work/.jjjjbbbo/lib/libjpeg.so.9 /usr/lib/libjpeg.so.9
  2. sudo ldconfig
复制代码

说明:
ln -s 用于将找到的 lib 文件软链接到系统目录
ldconfig命令是更新动态链接器运行时绑定

方法 2.配置临时环境变量

不想修改系统配置,可以通过临时环境变量来解决

  1. export LD_LIBRARY_PATH=/home/work/.jjjjbbbo/lib:$LD_LIBRARY_PATH
  2. python3 -c 'from PIL import Image' # 执行测试,没有报错
复制代码

配置LD_LIBRARY_PATH环境变量后,运行无报错,确认问题解决

验证库是否正确链接

  1. ldd $(which python3)
复制代码

命令可以查看解释器关联的依赖库路径。

还可以通过设置LD_DEBUG=libs 来输出动态链接库加载信息:

  1. LD_DEBUG=libs python3 -c 'from PIL import Image'
复制代码
易博软件介绍
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

1、请认真发帖,禁止回复纯表情,纯数字等无意义的内容!帖子内容不要太简单!
2、提倡文明上网,净化网络环境!抵制低俗不良违法有害信息。
3、如果你对主帖作者的帖子不屑一顾的话,请勿回帖。谢谢合作!
3、问答求助区发帖求助后,如有其他用户热心帮您解决问题后,请自觉点击设为最佳答案按钮。

 
 
QQ在线客服
QQ技术支持
工作时间:
8:00-18:00
软著登字:
1361266号
官方微信扫一扫
weixin

QQ|小黑屋|Archiver|慈众营销 ( 粤ICP备15049986号 )|网站地图

自动发帖软件 | 自动发帖器 | 营销推广软件 | 网络营销工具 | 网络营销软件 | 网站推广工具 | 网络推广软件 | 网络推广工具 | 网页推广软件 | 信息发布软件 | 网站推广工具 | 网页推广软件

Powered by Discuz! X3.4   © 2012-2020 Comsenz Inc.  慈众科技 - Collect from 深圳吉宝泰佛文化有限公司 公司地址:罗湖区黄贝街道深南东路集浩大厦A1403

返回顶部 返回列表