Использование библиотеки изображений Python с VirtualEnv в Windows - PullRequest
10 голосов
/ 09 июля 2010

Я пытаюсь установить библиотеку PIL в созданной мною виртуальной среде.

Обычно для установки PIL я беру установку, однако это не позволяет мне выбирать только свой virtualenv.моя корневая папка Python (C: / Python26).

Я пробовал как PIP установить PIL, так и PIP easy_install, но они не сработали.Я также попытался загрузить TAR, распаковать и запустить setup.py install

Django все еще отклоняет мою модель, которая содержит ImageField ().У кого-нибудь есть решение?

Ошибка, которая обычно возникает ниже:

Unable to find vcvarsall.bat

Редактировать:

ОК Я попробовал свежий virtualenv ииспользовал easy_install, который не показывает ошибку компиляции.

Затем я открываю оболочку Python, и это позволило мне import PIL и import _imaging, однако, когда я пытаюсь использовать ImageField() в django моих моделяхвсе еще не подтвердит.

Ответы [ 3 ]

6 голосов
/ 11 марта 2011

Переименование из PIL-1.1.7-py2.6-win32.egg в PIL в директории site-packages.

4 голосов
/ 09 июля 2010

ОК, похоже, это проблема VirtualEnv.

Несмотря на создание нового VirtualEnv с аргументом --no-site-packages, мой сайт Django загружает файлы django из корневой установки C:/Python26/Lib/site-packages/, а не локально.

Затем Django пытаетсяполучить PIL в корне site-packages, который он не может найти и приводит к ошибке.

Я понятия не имею, почему это происходит.Если я открою интерпретатор python, корневые файлы django не появятся в пути.

После исправления easy_install PIL должно работать.

0 голосов
/ 09 июля 2010

Установлена ​​ли у вас (последняя версия) Visual Studio?

Вот откуда взялась vcvarsall.bat, и какую сборку предпочитает использовать любое расширение Python из источников C на Windows (там ) способов использования mingw вместо этого, если это действительно ваша проблема).

(я говорю «последняя версия», потому что я считаю, что это то, что является дистрибутивом Python 2.6 для Python 2.6 для Windowsпостроен с).

...