Установка PIL с поддержкой JPEG в Mac OS X
Я задал вопрос, прежде чем обсуждать этот вопрос, и читать другие, опубликованные ранее, но никто из них не смог решить мою проблему.
Я пытаюсь установить PIL на Mac OS X Lion, так как мне это нужно для приложения Django. Мне также нужна поддержка JPEG, поэтому мне нужен декодер JPEG.
Я попытался загрузить источники libjpeg и скомпилировать их, а также установить PIL, но он не распознает каталог.
Итак, что бы я хотел, и я считаю, что это где-то существует, это метод установки как PIL, так и libjpeg с установщиком пакетов, без необходимости какой-либо компиляции!
Спасибо за каждый ответ.
Ответы
Ответ 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 устанавливает правильные зависимости.