J'essaie d'installer Pillow (module Python) à l'aide de pip, mais l'erreur suivante est générée:
ValueError: jpeg is required unless explicitly disabled using --disable-jpeg, aborting
Donc, comme le dit l'erreur, j'ai essayé:
pip install pillow --global-option="--disable-jpeg"
Mais cela échoue avec:
error: option --disable-jpeg not recognized
Des astuces pour y faire face?
Merci @mfitzp. Dans mon cas (CentOS), ces bibliothèques ne sont pas disponibles dans le référentiel de yum, mais en réalité, la solution était encore plus simple. Ce que j'ai fait:
Sudo yum install python-devel
Sudo yum install zlib-devel
Sudo yum install libjpeg-turbo-devel
Et maintenant, l'installation de l'oreiller se termine avec succès.
Un bogue signalé pour Pillow here , indique que libjpeg
et zlib
sont maintenant obligatoire à partir de Pillow 3.0.0.
Les instructions d'installation pour Pillow sur Linux donnent des conseils sur la manière d'installer ces paquets. Notez que tous les packages suivants ne sont peut-être pas manquants sur votre ordinateur (les commentaires suggèrent que seul libjpeg8-dev
est réellement manquant).
Les dernières versions de Pillow sont disponibles sur PyPi en tant que roues - le nouveau mécanisme d’emballage standard pour Python. Ces packages préconfigurés incluent toutes les dépendances binaires nécessaires à l'exécution de Pillow et doivent être utilisés si vous souhaitez installer Pillow à l'aide de PyPi.
Pour utiliser les roues, vous devez disposer d'une version de pip>=1.4
. Si vous utilisez une version antérieure (pip --version
), effectuez la mise à niveau du pip en utilisant les éléments suivants:
pip install --upgrade pip
Une fois que pip
est mis à niveau, pip install
utilisera les fichiers de roue spécifiques à la plate-forme par défaut s'ils sont disponibles. Utilisez la commande suivante pour mettre à niveau Pillow vers la dernière version disponible sur PyPi:
pip install --upgrade pillow
Sudo apt-get install libtiff4-dev libjpeg8-dev zlib1g-dev libfreetype6-dev liblcms2-dev libwebp-dev tcl8.5-dev tk8.5-dev python-tk
Sudo apt-get install libtiff5-dev libjpeg8-dev zlib1g-dev libfreetype6-dev liblcms2-dev libwebp-dev tcl8.6-dev tk8.6-dev python-tk
Sudo apt install libjpeg8-dev zlib1g-dev
L'équivalent Fedora 20 de libjpeg8-dev
est libjpeg-devel
.
Sudo yum install libtiff-devel libjpeg-devel libzip-devel freetype-devel lcms2-devel libwebp-devel tcl-devel tk-devel
Sur Mac OS X avec Homebrew , cela peut être corrigé en utilisant:
brew install libjpeg zlib
Vous devrez peut-être aussi forcer la liaison de zlib en utilisant les éléments suivants:
brew link zlib --force
Mise à jour du mois d'avril 2019: Dans Mojave, ce qui précède ne fonctionnera pas et vous devrez exécuter ce qui suit extrait de ce rapport de bogue sur Pillow =
Sudo installer -pkg /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg -target /
Mise à jour juillet 2016: Il n'y a plus de formule pour zlib
disponible dans le référentiel principal (Homebrew vous invitera à installer lzlib
qui est une bibliothèque différente et ne résoudra pas ce problème).
Il is une formule disponible dans le référentiel dupes. Vous pouvez soit appuyer sur ce référentiel, puis installer normalement:
brew tap homebrew/dupes
brew install zlib
Ou vous pouvez installer zlib
via xcode
, comme suit:
xcode-select --install
Merci à Phoenix, Panos Angelopoulou, Nelsonvarela, Benjaminz et Kal dans les commentaires
Une fois ceux-ci installés, l’installation de pip de Pillow devrait fonctionner normalement.
Sur Raspberry Pi II, j'ai eu le même problème. Après avoir essayé ce qui suit, j'ai résolu le problème. La solution est:
Sudo apt-get update
Sudo apt-get install libjpeg-dev
La solution la plus rapide consiste à mettre à niveau le pip. A travaillé pour moi:
pip install --upgrade pip
Cela a fonctionné pour moi.
`Sudo apt-get install libjpeg-dev`
brew install zlib
sous OS X ne fonctionne plus et invite à installer lzlib
. L'installation qui n'aide pas.
Au lieu de cela, vous installez des outils de ligne de commande XCode qui doivent installer zlib
xcode-select --install
J'ai eu le ValueError: zlib is required unless explicitly disabled using --disable-zlib
mais la mise à niveau de pip de 7.x à 8.y a résolu le problème.
Je voudrais donc essayer de mettre à jour les outils avant toute autre chose.
Cela peut être fait en utilisant:
pip install --upgrade pip
Cela a fonctionné pour moi pour résoudre l'erreur jpeg et zlib:
C:\Windows\system32>pip3 install pillow --global-option="build_e
xt" --global-option="--disable-zlib" --global-option="--disable-jpeg"
L'alternative, si vous ne voulez pas installer libjpeg:
CFLAGS="--disable-jpeg" pip install pillow
De https://pillow.readthedocs.io/fr/3.0.0/installation.html#external-libraries
Essayer
pip install pillow
Si cela ne fonctionne pas, essayez d'effacer le
cache by pip install --upgrade pip
Puis à nouveau courir
pip install pillow