Impossibile installare PIL dopo Mac OS X 10.9


132

Ho appena aggiornato il mio Mac OS a 10.9 e ho scoperto che alcuni (tutti?) Dei miei moduli Python non sono più qui, in particolare quello Immagine.

Quindi provo ad eseguire sudo pip install pil, ma ottengo questo errore:

/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

Il mio Xcode è aggiornato e non ne ho idea. È possibile che PIL non sia ancora compatibile con 10.9?


Non una risposta, ma hai provato Pillow? pypi.python.org/pypi/Pillow/2.2.1 - è molto ben supportato per PIL.
James Addison,

4
@JamesAddison Pillow 2.2.1 ha lo stesso effetto.
Adam J. Forster,

vuoipip install pillow
kilojoules il

Su macos 10.10.5 Yosemite, pip install Pillow==5.0.0funziona, installa .../site-packages/PIL. (Perché 5.0.0? Vedi il problema ).
denis,

Risposte:


211

Di seguito ha funzionato per me:

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

AGGIORNARE:

Ma c'è una soluzione più corretta di seguito, fornita da Will.

apri il tuo terminale ed esegui: xcode-select --install


2
La tua risposta ha un refuso, non lo MacOS10.9.sdkè MacOS0.9.sdk.
Bryan Veloso

3
Se vuoi anche avere un PIL / Pillow con supporto zlib / png / zip devi anche fare:ln -s /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/zlib.h /usr/local/include/
gromgull

26
il comando suggerito fa apparire una finestra di errore da Apple. Innanzitutto mi chiede se voglio ottenere XCode (che ho) o "Installa". Ho scelto l'installazione. Viene visualizzato un EULA, accetto, quindi viene visualizzata una finestra di dialogo di errore: "Impossibile installare il software perché non è attualmente disponibile dal server di aggiornamento del software."
Matt Feifarek,

7
Ho riscontrato un errore 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: nessun file o directory simile non ho direcotry / usr / local / include / X11?
pigletfly,

102

apri il tuo terminale ed esegui:

xcode-select --install


2
La domanda non riguarda l'installazione di Xcode ma PIL ... Inoltre, ho spiegato che avevo Xcode già installato e aggiornato.
Vincent Audebert,

5
Questo risolve anche il problema (installa gli strumenti da riga di comando che non sono installati di default con Xcode).
Rob Osborne,

1
Questo è tutto ciò che dovevo fare, nessuna di queste cose di collegamento simbolico.
Joerick il

@VincentShowcaseWorkshop Xcode non installa gli strumenti della riga di comando per impostazione predefinita. Ho dovuto farlo per superare lo stesso problema degli OP, anche se sicuramente avevo già installato Xcode e aggiornato su Mac OS 10.9.2.
Tony Adams,

Questo risolve il problema con la versione 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

mi aiuta! os x 10.9

pip install pillow

ma! dopo l'installazione del pip ...

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

e finalmente lo aggiusto eseguendo:

xcode-select --install

quindi reinstallare il cuscino

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
    --------------------------------------------------------------------

aggiornato ai maverick ieri e proprio oggi stavo iniziando un progetto, mi hai appena salvato ore di mal di cuore GRAZIE!
javiercf,

Questo ho dovuto fare $> ARCHFLAGS = -Wno-error = unused-command-line-argomento-hard-error-in-future pip install pillow
Sudhir

1
Grazie! per 10.10 utilizzare: 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

Funziona per me (OS X Yosemite 10.10.2 - Python 2.7.9):

xcode-select --install
sudo pip install pillow

Prova questo per verificarlo:

from PIL import Image
image = Image.open("file.jpg")
image.show()

11

Ecco cosa ho fatto, alcuni passaggi potrebbero non essere necessari solo per PIL ma avevo bisogno di libpng e altri comunque:

1) Esegui l'installazione di xcode, usa questo comando o scarica gli aggiornamenti dall'App Store:

xcode-select --install

1b) Aggiungi lo strumento opzionale Command Line Tools, in Mountain Lion questa era un'opzione nella pagina di download di xcode, ma ora devi registrarti con il tuo ID Apple e scaricare da: https://developer.apple.com/downloads/

Cerca gli strumenti da riga di comando (OS X Mavericks) per Xcode

2) Installa tutto il necessario per Python (usando brew), credo che puoi usare anche port:

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

Scollegare / ricollegare se necessario, ad esempio se si esegue l'aggiornamento.

3) Installa Pip e i moduli richiesti:

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

4) Finalmente funziona senza errori:

sudo pip install Pillow

AGGIORNAMENTO 11/04/14: il repository PIL non riceve più aggiornamenti o supporto, pertanto è necessario utilizzare Pillow. Il sotto è ora deprecato, quindi segui Pillow.

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

AGGIORNAMENTO (VECCHIO): la stessa cosa si applica durante l'installazione del cuscino (forcella PIL) e dovrebbe essere menzionata poiché sta rapidamente diventando un rimpiazzo nella maggior parte dei casi di PIL. Invece di installare pip nel passaggio 4, eseguire invece questo:

sudo pip install Pillow

Spero che questo aiuti qualcuno!


Il passaggio 4) può terminare con sth like _imagingft.c:73:10: fatal error: 'freetype/fterrors.h' file not found. Ma potrebbe essere risolto seguendo stackoverflow.com/questions/20325473/… .
Bugs Bunny,

stai installando pil o cuscino? PIL è deprecato, lo aggiornerò.
Radtek,

Non importa PIL o Pillow, potrebbe essere utile per alcuni utenti risolvere il problema del collegamento di tipo freetype / freetype2. Ma grazie!
Bugs Bunny

Sì, ho aggiunto elementi nel passaggio 2 per scollegare / collegare se si aggiorna. Se manca qualcosa puoi modificare e accetterò?
Radtek,

1
sudo pip install pil --allow-external pil --allow-non verificato pil mi ha aiutato nel 2015
fun_vit

9

l'installazione di strumenti da riga di comando ha risolto il problema per me

devi installarli separatamente poiché non fanno parte dei pacchetti in xcode ora:

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


1
Preferisco decisamente questo approccio. Odio fare collegamenti simbolici personalizzati con i pacchetti di sistema ... non sai mai cosa succederà al prossimo aggiornamento ...
tatlar

Questo sembra essere un URL non valido ora.
Matt Feifarek,

@MattFeifarek quell'URL ha funzionato per me oggi. Ho dovuto accedere con un account dev, ma mi ha portato alla relativa pagina di download degli strumenti da riga di comando.
Tony Adams,

8

Nessuno di quelli ha funzionato per me .. Ho continuato a ricevere:

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

Quindi ho trovato un modo per aggirare la seguente soluzione:

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

In questo modo sono stato in grado di installare.


Questo è quello che l'ha riparato per me. Se si esegue un ambiente virtuale, non è necessario il comando sudo.
Eric,

Grazie! Funziona con un ambiente virtuale Python. Xcode non era attualmente installato, quindi questo mi ha risparmiato il tempo di download.
Jamie Counsell,

Funziona alla grande con il vecchio xcode in 10.8, ha funzionato con Mavericks?
Radtek,

6

Ho avuto un problema simile: l'installazione del cuscino non è riuscita clang: error: unknown argument: '-mno-fused-madd' [-Wunused-command-line-argument-hard-error-in-future], l'installazione degli strumenti della riga di comando non è riuscitaCan't install the software because it is not currently available from the Software Update server. e, anche dopo aver installato manualmente gli strumenti da riga di comando, la compilazione di PIL non è riuscita.

Ciò accade perché il clang nella versione più recente di xcode non avvisa su flag di compilatore sconosciuti, ma piuttosto interrompe la compilazione con un errore grave.

Per risolvere questo problema, basta eseguire export ARCHFLAGS="-Wno-error=unused-command-line-argument-hard-error-in-future"sul terminale prima di provare a compilare (installare pil).


5

Corri semplicemente

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


3

Questo è il mio passo su 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

2

È possibile utilizzare Homebrew per eseguire l'installazione http://brew.sh

brew tap Homebrew/python
brew install pillow

Ciao Rchapman. Quando eseguo brewdi installare samueljohn / python / cuscino, dà un avvertimento del tipo: pillow-2.5.1 already installed, it's just not linked. E prima di questo, ci sono 15 avvertimenti come: Could not tap homebrew/python/cpyrit-cuda over samueljohn/python/cpyrit-cuda. Qualche idea sul perché questo accada? O come posso collegare il cuscino?
0xmtn

2

Assicurati di avere Strumenti a riga di comando installati sul tuo xcode. Quindi eseguire:

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

Sono stato in grado di installarlo senza strumenti da riga di comando utilizzando l'Xcode per Mavericks.
Radtek,

2

Stavo avendo il seguente errore

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 soluzione a questo era collegare symetype2 a freetype e questo ha risolto il problema.


2

Non volevo installare XCode (non lo uso) e detesto detestare la directory dell'applicazione. Ho paralizzato dalle molte risposte in questo post e i seguenti due passaggi funzionano per me con 10.9.5:

sudo easy_install pip
sudo pip install pillow

Mi è sembrato strano che ho dovuto usare easy_install per installare pip. Ma pip non voleva lavorare per me prima di quella (re) installazione.


1

Ho trovato la soluzione ... Devi collegare X11 in questo modo ln -s /opt/X11/include/X11 /usr/local/include/X11e quindi sudo pip install pildovrebbe funzionare.


non funziona per me ... hai aggiornato il tuo xcode prima di farlo funzionare? hai riavviato il tuo mac molte volte? questo mi sta frustrando. ughs.
bonbon.langes,

Ho fatto l'aggiornamento del mio codice x prima e ho riavviato il mio mac anche se non sono sicuro che sia utile. Forse il percorso per il tuo X11 non è lo stesso per te. Prova forse alcune delle altre risposte.
Vincent Audebert,

1

Riutilizzando la risposta di DmitryDemidenko è così che ha funzionato per me:

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

e poi

sudo pip install -U PIL --allow-external PIL --allow-unverified PIL

1

Eseguire le seguenti righe di comando. Funziona come un fascino su Mac OS 10.9.5

easy_install pip

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

sudo pip installa Cuscino

Meglio, Theo


0

Questo è quello che ho fatto:

Primo aggiornamento a Xcode 5 (sto eseguendo 10.9). Quindi, eseguire i seguenti comandi in un terminale:

$ /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/

1
Una risposta simile è stata data e accettata due settimane fa. Non riesco a vedere il tuo valore aggiunto ...
Soravux,

Bene, questa risposta ha percorsi diversi da quello accettato. Ho aggiunto questa versione come commento alla risposta accettata. Il comando èsudo 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 il

0

Una soluzione più completa richiede l'installazione del sottosistema Xquartz X11 che è stato costruito fuori Apple da diversi anni. Ecco i passaggi che ho usato per far funzionare tutto

  1. Installa XQuartz da http://xquartz.macosforge.org/landing/
  2. Correre sudo pip install pillow

0

Poiché la risposta accettata è quella giusta con, xcode-select --installma alcune persone (incluso me) possono incontrareCan't install the software because it is not currently available from the Software Update server Se si utilizza un software beta (poiché sto usando Yosemite ora e ho avuto lo stesso problema), è NECESSARIO ottenere il CLT separatamente poiché NON è incluso in XCode (anche xcode beta) Vai su developers.apple.com e ottieni strumenti CLT per il tuo sistema operativo;)

PS Non è necessario XQuartz per funzionare con PIL o Pillow



0

Installa invece il cuscino :

sudo pip install pillow

Hai ancora bisogno di tutte le pre-configurazioni come faresti per PIL
radtek,

@radtek no non su mac 10.9. Hai effettivamente provato il comando prima di aver votato in negativo la mia risposta?
Bobo,

Non ho votato a fondo la tua risposta, ho votato a favore, ma sì, ci ho provato. In realtà l'ho fatto un paio di volte e in realtà non avevo bisogno del passaggio 1b, ma di tutto ciò di cui avevo bisogno.
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

0

Prova questo:

ln -s /usr/local/include/freetype2 /usr/local/include/freetype

3
Per favore, aggiungi un po 'di più e spiega perché dovrebbe farlo.
Sir l33tname

0
sudo pip uninstall pillow
pip install pillow

ha funzionato per me. Sto eseguendo Python 2.7.9 su Yosemite. import PILora funziona per me.


0

Installazione di PIL (Imaging.1.1.7) su Mac OSC 10.10 Yosemite. Ho provato numerose soluzioni consigliate qui, ma ho avuto problemi con ognuna. Alla fine ho risolto questo problema modificando il file setup.py in modo che:

TCL_ROOT = "/ opt / X11 / include"

che passa il percorso di inclusione appropriato per X11 nella compilazione di _imagingtk.c, che stava causando il problema per me. Ha funzionato immediatamente dopo il cambiamento.


0

Mi sono trasferito da pyenva virtualenve questo ha risolto il mio problema.


-4
  1. ln -s / opt / X11 / include / X11 / usr / local / include / X11
  2. pip installa pil senza sudo
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.