简体   繁体   中英

Using Python Image Library with VirtualEnv on Windows

I'm attempting to install the PIL library in an Virtual Enviroment that I have created.

Usually to install PIL I'd grab the install, however this won't allow me to choose my virtualenv only my root Python folder (C:/Python26).

I tried both pip install PIL and easy_install PIP but they didn't work. I've also tried downloading the TAR, extracting and running setup.py install

Django is still rejecting my model which contains an ImageField(). Does anyone have a solution?

An error which commonly occurs is below:

Unable to find vcvarsall.bat

Edit:

OK I tried a fresh virtualenv and used easy_install which isn't showing the compile error.

I then open a Python shell and it allowed me to import PIL and import _imaging , however when I try to use the ImageField() in django my models still won't validate.

在站点包dir中将PIL-1.1.7-py2.6-win32.egg重命名为PIL。

OK this appears to be a VirtualEnv problem.

Despite making a new VirtualEnv with the --no-site-packages argument, my Django site is fetching the django files from the root install C:/Python26/Lib/site-packages/ rather than locally.

Django then attempts to fetch PIL in the root site-packages which it cannot find and results in an error.

I have no idea why this is occurring. If I open the python interpreter the root django files do not appear on the path.

Once remedied easy_install PIL should work.

Do you have (the latest version of) Visual Studio installed?

That's where vcvarsall.bat comes from, and what building any Python extension from C sources on Windows would prefer to use (there are ways of using mingw instead, if that's your actual problem).

(I'm saying "the latest version" because I believe that's what the python.org distribution of Python 2.6 for Windows is built with).

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM