OSX Pillow Несовместимая версия библиотеки libtiff.5.dylib и libjpeg.8.dylib

У меня есть эта ошибка при попытке использовать Pilow для любых скриптов:

  File "/Users/antonio/WWW/myproj/myproj/functions.py", line 12, in <module>
    from PIL import Image, ImageOps
  File "/Library/Python/2.7/site-packages/PIL/Image.py", line 53, in <module>
    from PIL import _imaging as core
ImportError: dlopen(/Library/Python/2.7/site-packages/PIL/_imaging.so, 2): Library not loaded: /usr/local/lib/libjpeg.8.dylib
  Referenced from: /usr/local/lib/libtiff.5.dylib
  Reason: Incompatible library version: libtiff.5.dylib requires version 13.0.0 or later, but libjpeg.8.dylib provides version 9.0.0

Может кто-нибудь помочь мне?


person Antonio    schedule 29.03.2014    source источник


Ответы (5)


У меня была такая же проблема, и мне пришлось переустановить подушку и все зависимости. Некоторые из моих символических ссылок не очень хороши.

Сначала нужно сделать:

brew doctor

И посмотрите, есть ли у вас ошибки. Мой был таким:

Warning: Unbrewed dylibs were found in /usr/local/lib.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.

Unexpected dylibs:
/usr/local/lib/libjpeg.8.dylib
/usr/local/lib/libpng.3.dylib
/usr/local/lib/libpng12.0.dylib
/usr/local/lib/libpng14.14.dylib

Warning: Unbrewed .la files were found in /usr/local/lib.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.

Unexpected .la files:
/usr/local/lib/libjpeg.la
/usr/local/lib/libpng12.la
/usr/local/lib/libpng14.la
/usr/local/lib/libpng15.la

Warning: Unbrewed .pc files were found in /usr/local/lib/pkgconfig.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.

 Unexpected .pc files:
/usr/local/lib/pkgconfig/libpng12.pc
/usr/local/lib/pkgconfig/libpng14.pc

Warning: Unbrewed static libraries were found in /usr/local/lib.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.

Unexpected static libraries:
/usr/local/lib/libjpeg.a
/usr/local/lib/libpng12.a
/usr/local/lib/libpng14.a

Поэтому я решил очистить все ошибки и зависимости, которые я установил:

brew uninstall pillow
brew uninstall libpng
brew uninstall libjpeg
brew uninstall webp
brew uninstall libtiff
brew uninstall littlecms

brew prune => to clean symlink

Когда мой варочный доктор работал без ошибок, я просто запускал brew install pillow, и все работало нормально.

Надеюсь, это поможет.

person Epok    schedule 30.03.2014
comment
brew install libtiff libjpeg webp little-cms2 , установить снова - person WeizhongTu; 12.06.2015
comment
Столкнулся с аналогичной проблемой, потому что python сначала искал библиотеки в DYLD_LIBRARY_PATH, а не в каталоге anaconda. unset DYLD_LIBRARY_PATH помог решить проблему. - person Vaibhav Gorde; 26.07.2019

Если вы используете conda, попробуйте:

conda install libtiff

Или, если вы этого не сделаете, попробуйте:

pip install --upgrade libtiff
person mdubez    schedule 01.10.2016

Попробуйте переустановить последнюю версию подушки. Я использую anaconda python и

conda install -f pillow

решить аналогичную проблему для меня.

person Frank    schedule 12.02.2015
comment
Это плохой ответ. Использование pip install работает для меня, но использование pip или conda не сработает, если в системе есть проблемы с библиотеками. - person Matti John; 12.02.2015
comment
Я использую анаконду, и этот ответ отлично сработал для меня. - person saulspatz; 13.10.2018

У меня была очень похожая проблема на OSX 10.10.2. Я также использую Anaconda для Python, Python 2.7.9 | Anaconda 2.2.0 (x86_64). Ответы Фрэнка и пользователя 4183543 были хороши, чтобы попробовать, но они не сработали для меня.

Мне помогло создание программных ссылок на незагруженные библиотеки.

Я сделал:

$ locate libtiff.5.dylib

и среди результатов было

/Users/curt/anaconda/lib/libtiff.5.dylib
/Users/curt/anaconda/pkgs/libtiff-4.0.2-1/lib/libtiff.5.dylib

Результаты для libjpeg.8.dylib были аналогичными. Я сделал программные ссылки для libjpeg.8.dylib и libtiff.5.dylib с помощью этих команд:

$ ln -s /Users/curt/anaconda/lib/libjpeg.8.dylib /usr/local/lib/libjpeg.8.dylib
$ ln -s /Users/curt/anaconda/lib/libtiff.5.dylib /usr/local/lib/libtiff.5.dylib

Подушка / PIL теперь работает для меня, по крайней мере, на данный момент.

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

person Curt F.    schedule 19.05.2015

Я столкнулся с той же проблемой. Поскольку я установил Python с помощью Anaconda, «conda install Pillow в этом случае сработала.

person user4183543    schedule 15.03.2015