Подтвердить что ты не робот

Как установить PIL на Mac OSX 10.5.8 для Google App Engine?

Мне нужно установить PIL локально для проверки изображений GAE api в моей локальной среде.

Я схватил установщик PIL 1.1.6 для Mac, и когда я иду, чтобы выбрать пункт назначения (при установке), я получаю сообщение об ошибке:

You cannot install PIL 1.1.6 on this volume. 
PIL requires System Python 2.5 to install.

У меня есть Python 2.5.x на этой машине.

Примечание:

Добавлена ​​щедрость. Я действительно нуждаюсь в способе тестирования API изображений локально на своем Mac.

4b9b3361

Ответ 1

Это довольно легко:

  • Установить MacPorts
  • Установите Python 2.5 с sudo port install python25
  • Установить Pil для Python 2.5 с помощью sudo port install py25-pil
  • В Настройках запуска Microsoft App Engine установите /opt/local/bin/python2.5 как Путь Python *
  • Перезапустите запуск приложения Google App Engine
  • Счастливое кодирование

* обязательно подтвердите его с помощью ENTER или оно не будет сохраняться

Ответ 2

Я бы установил homebrew и использовал его для установки python2.7 (требование для pip корректно работать вместе с homebrew), а затем используйте pip для установки PIL.

Если у вас нет macports или fink или что-то уже установлено, это просто. Если вы это сделаете, вы можете сначала изучить его (особенно, если они живут в /usr/local).

Установка доморощенного: https://github.com/mxcl/homebrew/wiki/Installation

(Если у вас установлен Xcode (вам нужен компилятор), вы можете просто использовать этот однострочный шрифт, но я рекомендую вам сначала прочитать инструкции, чтобы вы поняли, что он делает.)

ruby -e "$(curl -fsSLk https://gist.github.com/raw/323731/install_homebrew.rb)"

Установка python 2.7:

brew install python

Не забудьте добавить пингтон homebrew, а также ваш каталог binb вверху вашего $PATH после установки (поместите это в свой ~/.bashrc):

export PATH=/usr/local/bin:/usr/local/Cellar/python/2.7.1/bin:$PATH

Установка PIL: (похоже, моя установка связана с libjpeg, поэтому сначала установите это)

brew install jpeg
pip install pil

Там вы идете.

Ответ 3

Дайте Pillow попытку.

pip install Pillow

... и что он.

Ответ 4

Вот еще один метод, который не требует macports или homebrew и т.д. http://cgarvey.ie/blog/archive/2010/01/27/installing-pil-on-mac-os-x-snow-leopard-for-use-in-google-app-engine/

В названии говорится о снежном барсе, но он отлично работает на леопарде (просто сделал это). Перефразирован из статьи:

  • Загрузите jpegsrc.v8c.tar.gz или последний из http://www.ijg.org/files/
  • Извлеките jpegsrc и из этого каталога:

    export CC = "gcc -arch i386"
    . /configure
    сделать
    sudo make install

  • Загрузите и извлеките PIL и из каталога PIL

    sudo python setup.py install

Кажется, это работает для меня так, надеюсь, это помогает кому-то другому.

Извините, что форматирование немного странно, но у меня проблемы с редактором.

Ответ 5

sudo port install py27-pil
pip install pil

Ответ 6

Как указано в моем комментарии, я установил и протестировал установки Python и PIL найденные здесь, и все работает нормально. Вероятно, ваша ошибка связана с попыткой использовать системную версию Python.

Ответ 7

У меня нет 10.5.8, чтобы проверить это, поэтому YMMV (работает с 10.6):

  • Установите MacPorts (версия Leopard): http://www.macports.org/install.php
  • Приложения → Утилиты → Терминал
  • $sudo port install python27
  • $sudo port install py27-pip

Установите PIL либо через MacPorts, либо в pip (в зависимости от того, что работает - НЕ РАБОТАЙТЕ ОБА):

  • $sudo port install py27-pil
  • $sudo pip-2.7 install PIL

Запустите Python 2.7 и проверьте его:

$ python2.7
>>> import PIL
>>> PIL
<module 'PIL' from '/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/PIL/__init__.pyc'>

Помните, что вам нужно набрать $ python2.7, так как $ python продолжит загружать версию Python для OS X, которая равна 2.5, я считаю...

Это означает, что любые скрипты, которые вы пишете с помощью #!/usr/bin/env python вверху, будут использовать не-PIL Python 2.5. Вы должны изменить их на #!/opt/local/bin/python2.7 для PIL-Python 2.7. Или...

Вы можете легко изменить любую загружаемую версию Python $ python и игнорировать это безумие заголовка, установив python_select:

$ sudo port install python_select
...installs stuff...
$ sudo python_select python27

Теперь, когда вы запустите $ python, он загрузит Python 2.7, а не OS X Python 2.5. Вы можете легко переключиться в любое время. Просто запустите $ python_select -l, и вы увидите -apple версию Python. В 10.6: $ sudo python_select python26-apple

Ответ 8

У меня были python2.7 и PIL, установленные в течение длительного времени (с использованием MacPorts), и я успешно их использовал в работе без приложения. Приложению App Engine не удалось загрузить его и зарегистрировать следующее сообщение:

Не удалось инициализировать API изображений; вам, вероятно, не хватает модуля PILON Python.

Вдохновленный комментарием @DaveGallagher выше о настройках MacPorts в /opt/local/..., я понял, что у меня не работает правильный питон. В "Google App Engine Launcher" в "Предпочтения..." я изменил "Путь Python" на

/opt/local/bin/python2.7

Теперь, когда я забегаю, он находит PIL и работает служба изображений.

пс. Я запускаю GAE Launcher 1.8.2.978.