无法在“--no-install”后恢复“pip install”

0 投票
1 回答
1538 浏览
提问于 2025-04-17 21:10

我正在尝试在一台运行Debian 7的服务器上安装Pillow(Python图像库的一个分支,也叫PIL),希望它能支持JPEG文件。我最开始是用这个命令在我的虚拟环境中安装了Pillow v2.3.0:

pip install Pillow

但是我从输出结果中看到,Pillow默认不支持JPEG格式。去年底我在我的Mac笔记本上安装Pillow时,做了以下操作:

pip uninstall Pillow
pip install --no-install Pillow

然后我需要在build/Pillow/setup.py文件中添加这一行:

JPEG_ROOT = 'path/to/my/libjpeg/library'

接着我重新运行了“pip install Pillow”,这时Pillow就支持JPEG了。

但是现在在Debian上运行“pip install Pillow”时,我遇到了这个错误:

DEPRECATION:  --no-install, --no-download, ... are deprecated.  See
https://github.com/pypa/pip/issues/906.

当我修改了JPEG_ROOT并再次运行“pip install Pillow”时,又出现了这个错误:

pip can't proceed with requirement 'Pillow' due to a pre-existing build directory.  location: /home/myapp/venv/myapp/build/Pillow
This is likely due to a previous installation that failed.
etc., etc.

我查看了那个链接,发现“--no-download”这个选项确实已经被弃用了。页面提到有新的“unpack”和“download”选项。

有没有其他方法可以重新开始这个pip安装呢?

谢谢。

更新:

我运行了“pip --help”,但没有看到问题页面中提到的“download”或“unpack”选项。我还尝试用每个选项运行pip,以防帮助文件没有更新,但都没有成功。我也去了构建目录,运行了“python setup.py”,但这也没用,我甚至不确定这是否应该有效。我还想过是否可以用常规的“config/make/sudo make install”过程,但没有配置脚本可以运行。

在阅读了这个问题后,我还尝试了以下操作:

mkdir /home/me/pillow
pip install --download="/home/me/pillow" Pillow
cd  pillow
(I unzipped the Pillow file and changed to the Pillow directory)
(Then I edited the setup.py file)
pip install --no-index --find-links="/home/me/pillow" Pillow

Pillow安装成功了,但仍然没有包括JPEG支持。我是不是漏掉了什么步骤?它似乎没有检测到我已经修改了JPEG_ROOT。

请帮帮我!谢谢。

1 个回答

0

看看你最后的尝试,你可能需要把文件重新打包成ZIP格式,然后删除你创建的那个文件夹。我觉得这样它应该能正常找到那个文件并进行安装。

撰写回答