installa il cuscino su Ubuntu 14.04


11

Sono pazzo di Pillow. Lo chiedo già qui, senza risolvere:

Installazione del mezzanino Python Django non riuscita per il pacchetto Pillow

Ho Ubuntu 14.04 e Python 2.7.

Installando il cuscino usando pip o da github ho questo errore:

x86_64-linux-gnu-gcc: error: build/temp.linux-x86_64-2.7/_imaging.o: File o directory non esistente
x86_64-linux-gnu-gcc: error: build/temp.linux-x86_64-2.7/decode.o: File o directory non esistente
x86_64-linux-gnu-gcc: error: build/temp.linux-x86_64-2.7/encode.o: File o directory non esistente
x86_64-linux-gnu-gcc: error: build/temp.linux-x86_64-2.7/map.o: File o directory non esistente
x86_64-linux-gnu-gcc: error: build/temp.linux-x86_64-2.7/display.o: File o directory non esistente
error: command 'x86_64-linux-gnu-gcc' failed with exit status 1

----------------------------------------
Cleaning up...
Command /usr/bin/python -c "import setuptools, tokenize;__file__='/tmp/pip_build_root/Pillow/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-ctXrZt-record/install-record.txt --single-version-externally-managed --compile failed with error code 1 in /tmp/pip_build_root/Pillow
Traceback (most recent call last):
 File "/usr/bin/pip", line 9, in <module>
load_entry_point('pip==1.5.4', 'console_scripts', 'pip')()
 File "/usr/lib/python2.7/dist-packages/pip/__init__.py", line 185, in main
return command.main(cmd_args)
 File "/usr/lib/python2.7/dist-packages/pip/basecommand.py", line 161, in main
text = '\n'.join(complete_log)
 UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 28: ordinal not in range(128)

Naturalmente seguo anche questo:

Installazione PIL in Ubuntu 14.04.1 LTS

Forse c'è qualche conflitto in biblioteca. Provo a rimuovere tutto e a installarlo di nuovo ma ho sempre lo stesso errore.

Hai un suggerimento?


Hai usato sudo per installare il cuscino, giusto?
don.joey,

sicuramente uso anche sudo.
franco_b

Dimentichi di menzionare che stai utilizzando un virtualenv. Disattiva virtualenv. Installare il sistema di cuscini largo con sudo apt-get install python-pil. Riattiva virtualenv. Corri sudo pip install pillow.
don.joey,

Ho già installato la versione più recente di python-pil, comunque hai ragione, ho dimenticato di dire che avrei insatll Pillow usando virtualenv
franco_b

Risposte:


18

Innanzitutto, è necessario il pacchetto python-dev perché Pillow necessita di intestazioni di compilazione definite.

sudo apt-get install python-dev

Su Ubuntu 14.04 sono necessari alcuni pacchetti extra per far funzionare il cuscino. Installali tutti con il comando:

sudo apt-get install libtiff5-dev libjpeg8-dev zlib1g-dev libfreetype6-dev liblcms2-dev libwebp-dev tcl8.6-dev tk8.6-dev python-tk

Funzionerà sia per Python 2.x sia per Python 3.x. Potrebbe non essere necessario tutto questo, ma almeno è necessario installare libjpeg8-deve zlib1g-devper il supporto di JPEG e PNG.

Se stai usando Ubuntu 12.04, usa il seguente comando.

sudo apt-get install libtiff4-dev libjpeg8-dev zlib1g-dev libfreetype6-dev liblcms2-dev libwebp-dev tcl8.5-dev tk8.5-dev python-tk

Istruzioni dettagliate sono disponibili nella documentazione ufficiale sul cuscino.

Installazione - Cuscino (PIL Fork) 2.6.1 documentazione


1
Per l'esecuzione di Python 3$ sudo apt-get install python3-dev
Michael Radionov,

1
sudo apt-get install python-dev python-setuptools

e

sudo apt-get install libtiff5-dev libjpeg8-dev zlib1g-dev libfreetype6-dev liblcms2-dev libwebp-dev tcl8.6-dev tk8.6-dev python-tk

2
Espandi un po 'la tua risposta.
TheWanderer,

1
Benvenuto in Ask Ubuntu! Raccomando di modificare questa risposta per espanderla con dettagli specifici su come eseguire questa operazione. (Vedi anche Come posso scrivere una buona risposta? Per consigli generali su quali tipi di risposte sono considerate più preziose su Ask Ubuntu.)
David Foerster,

Questa è in realtà la risposta più corretta. Non capisco bene perché sia ​​stato votato verso il basso e quindi qualcuno lo abbia sostituito con una nuova risposta - avrebbe dovuto essere modificato con altre spiegazioni, no?
benjaoming,

Questo ha funzionato per me su debian 8, ma ho dovuto rimuovere libjpeg8-dev dalla lista.
Programmatore

0

prova a installare queste dipendenze di sviluppo:

sudo apt-get install python-dev python-setuptools

1
Mentre questo può tecnicamente rispondere alla domanda, di solito è meglio includere un po 'di spiegazione su cosa farà, invece che solo i comandi grezzi.
RPiAwesomeness,

0

Oltre alle installazioni di cui sopra, ho ancora avuto l'errore di cui sopra durante l'installazione di Pillow.

Per correggere l'errore, vai a / usr / include:

cd /usr/include

Creare un collegamento simbolico, indicando la directory freetype2:

ln -s freetype2 freetype
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.