Impossible d'installer PIL après Mac OS X 10.9

132

Je viens de mettre à jour mon Mac OS à 10.9 et j'ai découvert que certains (tous?) De mes modules Python ne sont plus là, en particulier celui d'image.

J'essaye donc d'exécuter sudo pip install pil, mais j'obtiens cette erreur:

/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/tk.h:78:11: fatal error: 'X11/Xlib.h' file not found

#      include <X11/Xlib.h>

               ^

1 error generated.

error: command 'cc' failed with exit status 1

Mon Xcode est à jour et je n'ai aucune idée. Est-il possible que PIL ne soit pas encore compatible 10.9?

Vincent Audebert
la source
Pas de réponse, mais avez-vous essayé Pillow? pypi.python.org/pypi/Pillow/2.2.1 - c'est un très bien supporté pour de PIL.
James Addison
4
@JamesAddison Pillow 2.2.1 est effectué de la même manière.
Adam J.Forster
vous voulezpip install pillow
kilojoules
Sur macos 10.10.5 Yosemite, pip install Pillow==5.0.0fonctionne, installe .../site-packages/PIL. (Pourquoi 5.0.0? Voir le problème ).
denis

Réponses:

211

La suite a fonctionné pour moi:

ln -s  /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/Tk.framework/Versions/8.5/Headers/X11 /usr/local/include/X11
sudo pip install pil

METTRE À JOUR:

Mais il y a une solution plus correcte ci-dessous, fournie par Will.

ouvrez votre terminal et exécutez: xcode-select --install

Dmitry Demidenko
la source
2
Votre réponse a une faute de frappe, ce n'est MacOS10.9.sdkpas le cas MacOS0.9.sdk.
Bryan Veloso
3
Si vous voulez également avoir un PIL / Pillow avec le support zlib / png / zip, vous devez également faire:ln -s /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/zlib.h /usr/local/include/
gromgull
26
la commande suggérée fait apparaître une boîte de dialogue d'erreur d'Apple. Tout d'abord, il me demande si je veux obtenir XCode (que j'ai) ou "Installer". Je choisis installer. Il fait apparaître un CLUF, j'accepte, puis une boîte de dialogue d'erreur s'affiche: "Impossible d'installer le logiciel car il n'est actuellement pas disponible sur le serveur de mise à jour de logiciels."
Matt Feifarek du
7
J'ai rencontré une erreur Downloading/unpacking pil Could not find any downloads that satisfy the requirement pil Some externally hosted files were ignored (use --allow-external pil to allow). Cleaning up... No distributions at all found for pil Storing debug log for failure in /Users/Usermania/.pip/pip.log
Leonid
1
ln: / usr / local / include / X11: Aucun fichier ou répertoire de ce type Je n'ai pas de répertoire / usr / local / include / X11?
pigletfly
102

ouvrez votre terminal et exécutez:

xcode-select --install

Willem
la source
2
La question n'est pas d'installer Xcode mais PIL ... De plus, j'ai expliqué que j'avais déjà Xcode installé et à jour.
Vincent Audebert
5
Cela résout également le problème (cela installe les outils de ligne de commande qui ne sont pas installés par défaut avec Xcode).
Rob Osborne
1
C'est tout ce que j'avais à faire, aucun de ces trucs symboliques.
joerick
@VincentShowcaseWorkshop Xcode n'installe pas les outils de ligne de commande par défaut. J'ai dû faire cela pour surmonter le même problème que les OP, même si Xcode était certainement déjà installé et à jour sur Mac OS 10.9.2.
Tony Adams
Cela résout le problème avec la version Mac 10.11.2 (15C50).
webtweakers
34
sudo ln -s /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/System/Library/Frameworks/Tk.framework/Versions/8.5/Headers/X11/ /usr/local/include/X11

aide pour moi! os x 10.9

pip install pillow

mais! après l'installation de pip ...

*** ZLIB (PNG/ZIP) support not available

et enfin je le répare en exécutant:

xcode-select --install

puis réinstallez l'oreiller

pip install pillow

PIL SETUP SUMMARY
    --------------------------------------------------------------------
    version      Pillow 2.2.1
    platform     darwin 2.7.5 (default, Aug 25 2013, 00:04:04)
                 [GCC 4.2.1 Compatible Apple LLVM 5.0 (clang-500.0.68)]
    --------------------------------------------------------------------
    --- TKINTER support available
    --- JPEG support available
    --- ZLIB (PNG/ZIP) support available
    --- TIFF G3/G4 (experimental) support available
    --- FREETYPE2 support available
    --- LITTLECMS support available
    --- WEBP support available
    --- WEBPMUX support available
    --------------------------------------------------------------------
klem4
la source
mis à jour hier pour les non-conformistes et juste aujourd'hui, je commençais un projet, vous venez de m'économiser des heures de chagrin MERCI!
javiercf
Cela je devais faire $> ARCHFLAGS = -Wno-error = unused-command-line-argument-hard-error-in-future pip install oreiller
Sudhir
1
Merci! pour 10.10 utiliser: sudo ln -s /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk/System/Library/Frameworks/Tk.framework/Versions/8.5/Headers / X11 / usr / local / include / X11
rozochkin
14

Fonctionne pour moi (OS X Yosemite 10.10.2 - Python 2.7.9):

xcode-select --install
sudo pip install pillow

Essayez ceci pour le vérifier:

from PIL import Image
image = Image.open("file.jpg")
image.show()
x86
la source
11

Voici ce que j'ai fait, certaines étapes peuvent ne pas être nécessaires uniquement pour PIL mais j'avais besoin de libpng et d'autres de toute façon:

1) Exécutez l'installation de xcode, utilisez cette commande ou téléchargez les mises à jour depuis l'App Store:

xcode-select --install

1b) Ajoutez l'outil facultatif des outils de ligne de commande, dans Mountain Lion, c'était une option sur la page de téléchargement xcode, mais vous devez maintenant vous inscrire avec votre identifiant Apple et télécharger à partir de: https://developer.apple.com/downloads/

Recherchez les outils de ligne de commande (OS X Mavericks) pour Xcode

2) Installez tout le nécessaire pour python (en utilisant brew), je pense que vous pouvez également utiliser le port:

brew install readline sqlite gdbm
brew install python --universal --framework 
brew install libpng jpeg freetype

Dissocier / relier si nécessaire, c'est-à-dire en cas de mise à niveau.

3) Installez Pip et les modules requis:

easy_install pip 
sudo pip install setuptools --no-use-wheel --upgrade

4) Enfin, cela fonctionne sans erreur:

sudo pip install Pillow

MISE À JOUR 11/04/14: Le dépôt PIL ne reçoit plus de mises à jour ou d'assistance, donc Pillow doit être utilisé. Le ci-dessous est maintenant obsolète, alors restez avec Pillow.

sudo pip install pil --allow-external pil --allow-unverified pil

MISE À JOUR (ANCIENNE): La même chose s'applique lors de l'installation de Pillow (fourche PIL) et doit être mentionnée comme étant rapidement en train de remplacer dans la plupart des cas de PIL. Au lieu d'installer pip à l'étape 4, exécutez plutôt ceci:

sudo pip install Pillow

J'espère que cela aide quelqu'un!

Radtek
la source
L'étape 4) peut se terminer par qc comme _imagingft.c:73:10: fatal error: 'freetype/fterrors.h' file not found. Mais pourrait être résolu en suivant stackoverflow.com/questions/20325473/… .
Bugs Bunny
installez-vous pil ou oreiller? PIL est obsolète, je vais mettre à jour ceci.
radtek
Ça n'a pas d'importance. PIL ou Pillow, il peut toujours être utile pour certains utilisateurs de résoudre le problème de liaison symbolique freetype / freetype2. Mais merci!
Bugs Bunny
Ouais, j'ai ajouté des éléments à l'étape 2 pour dissocier / lier en cas de mise à niveau. S'il manque quelque chose, pouvez-vous modifier et j'accepterai?
radtek
1
sudo pip install pil --allow-external pil --allow-unverified pil m'a aidé en 2015
fun_vit
9

l'installation d'outils de ligne de commande a résolu le problème pour moi

vous devez les installer séparément car ils ne font pas partie des packages de xcode maintenant:

https://developer.apple.com/downloads/index.action?=command%20line%20tools#

Formulka
la source
1
Je préfère définitivement cette approche. Je déteste faire des liens symboliques personnalisés avec les packages système ... vous ne savez jamais ce qui va se casser lors de la prochaine mise à jour ...
Tatlar
Cela semble être une mauvaise URL maintenant.
Matt Feifarek du
@MattFeifarek cette URL a fonctionné pour moi aujourd'hui. J'ai dû me connecter avec un compte de développement, mais cela m'a ensuite conduit à la page de téléchargement des outils de ligne de commande appropriés.
Tony Adams
8

Aucun de ceux-ci n’a fonctionné pour moi.

clang: error: unknown argument: '-mno-fused-madd' [-Wunused-command-line-argument-hard-error-in-future]
clang: note: this will be a hard error (cannot be downgraded to a warning) in the future
error: command 'cc' failed with exit status 1

J'ai donc trouvé un moyen de contourner la solution suivante:

sudo export CFLAGS=-Qunused-arguments
sudo export CPPFLAGS=-Qunused-arguments
sudo pip install PIL --allow-external PIL --allow-unverified PIL

De cette façon, j'ai pu installer.

tonhozi
la source
C'est celui qui l'a corrigé pour moi. Si vous exécutez un environnement virtuel, vous n'avez pas besoin de la commande sudo.
Eric
Je vous remercie! Cela fonctionne en exécutant un environnement virtuel Python. Je n'avais pas Xcode actuellement installé, donc cela m'a économisé le temps de téléchargement.
Jamie Counsell
Cela fonctionne très bien pour l'ancien xcode dans 10.8, cela a-t-il fonctionné pour Mavericks?
radtek le
6

J'ai eu un problème similaire: l'installation de l'oreiller a échoué avec clang: error: unknown argument: '-mno-fused-madd' [-Wunused-command-line-argument-hard-error-in-future], l'installation des outils de ligne de commande a échoué avec Can't install the software because it is not currently available from the Software Update server., et même après l'installation manuelle des outils de ligne de commande, la compilation de PIL a échoué.

Cela se produit car le bruit sous la dernière version de xcode ne prévient pas les indicateurs de compilateur inconnus, mais arrête plutôt la compilation avec une erreur grave.

Pour résoudre ce problème, exécutez simplement export ARCHFLAGS="-Wno-error=unused-command-line-argument-hard-error-in-future"sur le terminal avant d'essayer de compiler (installer pil).

nicolaslara
la source
5

Exécutez simplement

pip install pil --allow-external pil --allow-unverified pil

jqualls
la source
3

Voici mes étapes sur Mac OS 10.9.1

1. sudo su
2. easy_install pip
3. xcode-select --install
4. pip install --no-index -f http://dist.plone.org/thirdparty/ -U PIL
saranpol
la source
2

Vous pouvez utiliser Homebrew pour faire l'installation http://brew.sh

brew tap Homebrew/python
brew install pillow
rchapman
la source
Bonjour rchapman. Quand je lance brewinstaller samueljohn / python / oreiller, il donne un avertissement comme: pillow-2.5.1 already installed, it's just not linked. Et avant cela, il y a 15 avertissements comme: Could not tap homebrew/python/cpyrit-cuda over samueljohn/python/cpyrit-cuda. Des idées pourquoi cela se produit? Ou comment puis-je lier un oreiller?
0xmtn
2

Assurez-vous que les outils de ligne de commande sont installés sur votre xcode. Puis exécutez:

sudo pip install pil --allow-external pil --allow-unverified pil
user3643204
la source
J'ai pu l'installer sans outils de ligne de commande en utilisant le Xcode pour Mavericks.
radtek le
2

J'avais l'erreur suivante

building 'PIL._imagingft' extension
_imagingft.c:62:10: fatal error: 'freetype/fterrors.h' file not found

#include <freetype/fterrors.h>

         ^

1 error generated.

error: command 'cc' failed with exit status 1

La solution à cela était de créer un lien symbolique entre freetype2 et freetype et cela a résolu le problème.

Geoffrey
la source
2

Je ne voulais pas installer XCode (je ne l'utilise pas) et je déteste jouer avec le répertoire Application. J'ai tiré parti des nombreuses réponses de cet article et les deux étapes suivantes fonctionnent pour moi avec 10.9.5:

sudo easy_install pip
sudo pip install pillow

Il m'a semblé étrange que je doive utiliser easy_install pour installer pip. Mais pip ne voulait pas travailler pour moi avant cette (ré) installation.

CyberFonic
la source
1

J'ai trouvé la solution ... Vous devez créer un lien symbolique X11 comme ceci ln -s /opt/X11/include/X11 /usr/local/include/X11et cela sudo pip install pildevrait fonctionner.

Vincent Audebert
la source
ne fonctionne pas pour moi ... avez-vous mis à jour votre xcode avant de le faire fonctionner? avez-vous redémarré votre mac plusieurs fois? cela me frustre. ughs.
bonbon.langes
J'ai fait ma mise à jour xcode avant et j'ai redémarré mon mac même si je ne suis pas sûr que cela soit utile. Peut-être que le chemin vers votre X11 n'est pas le même pour vous. Essayez peut-être certaines des autres réponses.
Vincent Audebert
1

Réutiliser la réponse de @ DmitryDemidenko, voilà comment cela a fonctionné pour moi:

ln -s  /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/Tk.framework/Versions/8.5/Headers/X11 /usr/local/include/X11

puis

sudo pip install -U PIL --allow-external PIL --allow-unverified PIL
Dimosthenis Kontogiorgos
la source
1

Exécutez les lignes de commande ci-dessous. Fonctionne comme un charme sur Mac OS 10.9.5

pip easy_install

sudo pip install setuptools --no-use-wheel --upgrade

sudo pip installer oreiller

Meilleur, Theo

Theophanis Hadjistasi
la source
0

C'est ce que j'ai fait:

Première mise à niveau vers Xcode 5 (j'utilise 10.9). Ensuite, exécutez les commandes suivantes dans un terminal:

$ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk
$ ln -s /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/Tk.framework/Versions/8.5/Headers/X11 usr/include/
William Monroe
la source
1
Une réponse similaire a été donnée et acceptée il y a deux semaines. Je ne vois pas la valeur supplémentaire de la vôtre ...
Soravux
Eh bien, cette réponse a des chemins différents de celui accepté. J'ai ajouté cette version en commentaire à la réponse acceptée. La commande estsudo ln -s /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/Tk.framework/Versions/8.5/Headers/X11 /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/X11
osa
0

Une solution plus complète nécessite l'installation du sous-système Xquartz X11 qui est construit en dehors d'Apple depuis plusieurs années maintenant. Voici les étapes que j'ai utilisées pour que tout fonctionne

  1. Installez XQuartz depuis http://xquartz.macosforge.org/landing/
  2. Courir sudo pip install pillow
Sammy Spets
la source
0

Comme la réponse acceptée est la bonne, xcode-select --installmais certaines personnes (y compris moi) peuvent rencontrer Can't install the software because it is not currently available from the Software Update server Si vous utilisez un logiciel bêta (car j'utilise Yosemite maintenant et j'ai le même problème), vous DEVEZ obtenir le CLT séparément car il n'est PAS inclus dans XCode (même xcode beta) Rendez-vous sur developer.apple.com et obtenez des outils CLT pour votre système d'exploitation;)

PS Vous n'avez pas besoin de XQuartz pour que PIL ou Pillow fonctionne

Mohibeyki
la source
0

Ma machine qui a récemment été mise à niveau depuis OS 10.8 -> 10.9 est restée coincée dans une boucle entre xcrun et lipo.

Renommez / usr / bin / lipo en / usr / bin / lipo_broken

Reportez-vous à ce fil pour plus d'informations sur la façon de résoudre:

xcrun / lipo se fige avec OS X Mavericks et XCode 4.x

Ben Russell
la source
0

Installez plutôt Pillow :

sudo pip install pillow
Bobo
la source
Vous avez toujours besoin de toute la pré-configuration comme vous le feriez pour PIL
radtek
@radtek non vous ne le faites pas sur mac 10.9. Avez-vous réellement essayé la commande avant de voter contre ma réponse?
Bobo
Je n'ai pas voté contre votre réponse, j'ai voté pour, mais oui, j'ai essayé. En fait, je l'ai fait plusieurs fois maintenant et je n'avais pas besoin de l'étape 1b, mais de tout ce dont j'avais besoin.
radtek
0
ln -s /usr/local/include/freetype2 /usr/local/include/freetype
sudo ARCHFLAGS=-Wno-error=unused-command-line-argument-hard-error-in-future pip install pil
softvar
la source
0

Essaye ça:

ln -s /usr/local/include/freetype2 /usr/local/include/freetype
Damian Gołojuch
la source
3
Veuillez ajouter un peu plus et expliquer pourquoi il devrait faire cela.
Sir l33tname
0
sudo pip uninstall pillow
pip install pillow

travaillé pour moi. J'utilise Python 2.7.9 sur Yosemite. import PILfonctionne maintenant pour moi.

kilojoules
la source
0

Installation de PIL (Imaging.1.1.7) sur Mac OSC 10.10 Yosemite. J'ai essayé de nombreux correctifs recommandés ici mais j'ai rencontré des problèmes avec chacun d'eux. J'ai finalement résolu ce problème en éditant le fichier setup.py tel que:

TCL_ROOT = "/ opt / X11 / inclure"

qui transmet le chemin d'inclusion approprié pour X11 dans la compilation de _imagingtk.c, ce qui me posait le problème. A travaillé immédiatement après le changement.

Keith Bush
la source
0

Je suis passé de pyenvà virtualenvet que ce soit réglé mon problème.

ipeacocks
la source
-4
  1. ln -s / opt / X11 / include / X11 / usr / local / include / X11
  2. pip installer pil sans sudo
Sergey
la source