在Windows上使用虚拟环境中的Python图像库
我正在尝试在我创建的虚拟环境中安装PIL库。
通常安装PIL库时,我会直接下载安装包,但这次我只能选择我的根Python文件夹(C:/Python26),而不能选择我的虚拟环境。
我试过用命令pip install PIL和easy_install PIP,但都没有成功。我还尝试下载TAR文件,解压后运行setup.py install。
不过,Django还是不接受我包含ImageField()的模型。有没有人能提供解决办法?
下面是一个常见的错误信息:
Unable to find vcvarsall.bat
编辑:
好的,我尝试了一个新的虚拟环境,并使用easy_install,这次没有出现编译错误。
然后我打开了Python命令行,成功导入了PIL
和_imaging
,但是当我在Django中使用ImageField()
时,我的模型还是无法通过验证。
3 个回答
你安装了最新版本的Visual Studio吗?
这个vcvarsall.bat
文件就是从这里来的,它是用来在Windows上从C源代码构建任何Python扩展时最常用的工具(如果你遇到的问题是用mingw
,其实也有其他方法可以解决)。
我提到“最新版本”,是因为我认为python.org提供的Windows版Python 2.6就是用这个版本构建的。
把文件名从 PIL-1.1.7-py2.6-win32.egg 改成 PIL,放到 site-packages 文件夹里。
好的,这看起来是个虚拟环境的问题。
尽管我用 --no-site-packages
参数创建了一个新的虚拟环境,但我的 Django 网站却从根目录的安装位置 C:/Python26/Lib/site-packages/
获取 Django 文件,而不是从本地获取。
然后,Django 尝试在根目录的 site-packages
中寻找 PIL,但找不到,结果就出现了错误。
我不知道为什么会这样。如果我打开 Python 解释器,根目录的 Django 文件并没有出现在路径中。
一旦解决了这个问题,运行 easy_install PIL
应该就能正常工作了。