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

Установка PIL с поддержкой JPEG в Mac OS X

Я задал вопрос, прежде чем обсуждать этот вопрос, и читать другие, опубликованные ранее, но никто из них не смог решить мою проблему.

Я пытаюсь установить PIL на Mac OS X Lion, так как мне это нужно для приложения Django. Мне также нужна поддержка JPEG, поэтому мне нужен декодер JPEG.

Я попытался загрузить источники libjpeg и скомпилировать их, а также установить PIL, но он не распознает каталог.

Итак, что бы я хотел, и я считаю, что это где-то существует, это метод установки как PIL, так и libjpeg с установщиком пакетов, без необходимости какой-либо компиляции!

Спасибо за каждый ответ.

4b9b3361

Ответ 1

Я установил libjpeg и PIL на Snow, и он был без проблем перенесен на Lion.

Я думаю, однако, что у вас такая же проблема, с которой я столкнулся с установкой libjpeg 7 на Snow. Решение для меня было:

  • Убедитесь, что вы НЕ используете GCC 4.0. Это означает, что эти строки экспорта в вашем файле .bash_profile, которые вам нужны для получения MySQLdb теперь нужно уйти.
  • get (http://www.ijg.org/files/jpegsrc.v7.tar.gz) и выполните обычный. /configure && & make && make install (или что-то, что говорит readme).
  • Перед установкой PIL, но после установки libjpeg, измените строку "JPEG_ROOT = None" в файле setup.py на "JPEG_ROOT = libinclude (" /USR/ локальные ")"

Я получил это из комментария этого блога.

Затем вы можете переустановить PIL через pip или easy_install. Убедитесь, что все скомпилированные материалы с вашего последнего прогона удалены (иногда вам нужно сделать это вручную). Я использовал virtualenv и pip.

Ответ 2

В нашем virtualenv мы нашли все, что нам нужно было сделать:

pip uninstall PIL
brew install libjpeg
pip install PIL

что проще, чем некоторые из вышеперечисленных, и может быть достаточно для других с этой проблемой. Несмотря на наличие предупреждения xcode в brew и предупреждения пакета setup.py при переустановке PIL, все тесты, которые ранее не выполнялись с ошибками декодирования jpeg, успешно выполнялись после только быстрого действия выше.

Ответ 3

Удостоверьтесь, что у вас есть доморощенный и пип, а затем запустите:

brew install libjpeg
pip install pil

Ответ 4

Я использовал следующий двоичный код, чтобы получить libpng и libjpeg, установленные в системе OSX:

libpng и libjpeg для OSX

Поскольку у меня уже был установлен PIL (через pip на virtualenv), я побежал:

pip uninstall PIL
pip install PIL --upgrade

Это разрешило ошибку decoder JPEG not available для меня.

UPDATE:

Если встречается ошибка encoder jpeg not available, вам может потребоваться установить libjpeg. Если вы используете Homebrew:

brew install libjpeg

Ответ 5

Стоит отметить и хорошую информацию при работе с Python и PIL: если вы используете virtualenv (и я думаю, что это очень хорошая идея), PIL может неправильно определить библиотеки изображений в вашей системе и установить без поддержки JPEG/PNG, Используйте пакет подушек для совместимой вилки PIL, которая находит их правильно.

Ответ 6

Для OSX, pip install PIL имеет:

--------------------------------------------------------------------
PIL 1.1.7 SETUP SUMMARY
--------------------------------------------------------------------
version       1.1.7
platform      darwin 2.7.2 (default, Oct 11 2012, 20:14:37)
              [GCC 4.2.1 Compatible Apple Clang 4.0 (tags/Apple/clang-418.0.60)]
--------------------------------------------------------------------
--- TKINTER support available
*** JPEG support not available
--- ZLIB (PNG/ZIP) support available
*** FREETYPE2 support not available
*** LITTLECMS support not available
--------------------------------------------------------------------

Другой пост привел к чему-то, что работает.

Установите библиотеки из здесь.

Ответ 7

Если у вас установлены macports, вы должны сделать:

$ sudo port selfupdate
$ sudo port install py27-pil

Это проще, чем метод easy_install + libjpeg, поскольку macports устанавливает правильные зависимости.