如何安装和libjpeg.9.dylib兼容的PIL库
时间: 2024-02-25 17:54:30 浏览: 264
在macOS系统中,Pillow库需要使用libjpeg.9.dylib才能正常工作。如果你遇到了Pillow库无法正常导入或者报错的问题,可以尝试以下方法:
1.卸载已经安装的Pillow库:
```
pip uninstall pillow
```
2.安装libjpeg-turbo库:
```
brew install libjpeg-turbo
```
3.安装Pillow库,并指定使用libjpeg-turbo库:
```
pip install --no-binary :all: --no-use-pep517 pillow
```
这个命令会强制从源码编译安装Pillow库,并且使用libjpeg-turbo库。这样就可以解决Pillow库和libjpeg.9.dylib兼容的问题了。
相关问题
>>> import torchvision Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/opt/anaconda3/envs/pytorch/lib/python3.9/site-packages/torchvision/__init__.py", line 7, in <module> from torchvision import datasets File "/opt/anaconda3/envs/pytorch/lib/python3.9/site-packages/torchvision/datasets/__init__.py", line 1, in <module> from .lsun import LSUN, LSUNClass File "/opt/anaconda3/envs/pytorch/lib/python3.9/site-packages/torchvision/datasets/lsun.py", line 2, in <module> from PIL import Image File "/opt/anaconda3/envs/pytorch/lib/python3.9/site-packages/PIL/Image.py", line 100, in <module> from . import _imaging as core ImportError: dlopen(/opt/anaconda3/envs/pytorch/lib/python3.9/site-packages/PIL/_imaging.cpython-39-darwin.so, 2): Library not loaded: @rpath/libjpeg.9.dylib Referenced from: /opt/anaconda3/envs/pytorch/lib/python3.9/site-packages/PIL/_imaging.cpython-39-darwin.so Reason: Incompatible library version: _imaging.cpython-39-darwin.so requires version 15.0.0 or later, but libjpeg.9.dylib provides version 12.0.0
这个错误提示显示 PIL 库中的 _imaging.cpython-39-darwin.so 动态链接库依赖的 libjpeg.9.dylib 版本不兼容,需要版本号为 15.0.0 或更高版本。
解决方法:
1.卸载已安装的 Pillow 库,执行以下命令:
```
pip uninstall pillow
```
2. 安装 libjpeg-turbo,执行以下命令:
```
brew install libjpeg-turbo
```
3. 安装 Pillow 库,并指定使用 libjpeg-turbo 库,执行以下命令:
```
pip install --no-cache-dir -I pillow-SO_LATEST_VERSION --global-option="build_ext" --global-option="--disable-jpeg" --global-option="--enable-jpeg2000" --global-option="--enable-zlib" --global-option="--enable-turbojpeg"
```
其中,SO_LATEST_VERSION 是指最新版本的 Pillow 库的版本号。您可以在 PyPI 上查看最新版本的 Pillow 库的版本号。
4. 验证 Pillow 库是否安装成功,执行以下命令:
```
python -c "from PIL import Image; print(Image.core.jpeglib_version)"
```
如果输出的版本号为 libjpeg-turbo 的版本号,则说明安装成功。
libjpeg.so.9下载
您可以在任何Linux发行版的软件包库中找到libjpeg.so.9。您可以使用以下命令在您的终端中下载安装它:
对于Debian/Ubuntu系统:
```
sudo apt-get update
sudo apt-get install libjpeg9
```
对于Fedora系统:
```
sudo dnf install libjpeg9
```
对于CentOS/RHEL系统:
```
sudo yum install libjpeg9
```
一旦安装完成,您就可以在系统中使用libjpeg.so.9库文件了。如果您希望手动下载该库文件,您可以在互联网上搜索“libjpeg.so.9下载”,然后从可信赖的网站下载该文件。但我们建议您从官方源获取该文件,以确保文件的安全性和可靠性。安装完成后,您还可以使用命令`ldconfig`来更新动态链接库的缓存,以便系统可以找到并加载libjpeg.so.9。希望这些信息对您有所帮助!
阅读全文