instalar almohada en ubuntu 14.04

11

Estoy loco con Pillow. Ya pregunto aquí, sin resolver:

Error de instalación de Python Django Mezzanine para el paquete Pillow

Tengo Ubuntu 14.04 y Python 2.7.

Instalando la almohada usando pip o desde github Tengo este error:

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, sigo esto también:

Instalar PIL en Ubuntu 14.04.1 LTS

Quizás haya algún conflicto en la biblioteca. Intento eliminar todo e instalarlo nuevamente, pero siempre tengo el mismo error.

¿Tienes alguna sugerencia?

franco_b
fuente
Usaste sudo para instalar la almohada, ¿verdad?
don.joey
Seguro que uso sudo también.
franco_b
Olvida mencionar que está utilizando un virtualenv. Desactiva tu virtualenv. Instale el sistema de almohada de ancho con sudo apt-get install python-pil. Reactiva tu virtualenv. Ejecutar sudo pip install pillow.
don.joey
Ya he instalado la versión más reciente de Python-pil, de todos modos que haya derecho se me olvidó decir que me insatll Almohada usando virtualenv
franco_b

Respuestas:

18

En primer lugar, necesita el paquete python-dev porque Pillow necesita compilar encabezados definidos.

sudo apt-get install python-dev

En Ubuntu 14.04 necesita algunos paquetes adicionales para que la almohada funcione. Instalarlos todos con el 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

Esto funcionará tanto para python 2.xy python 3.x. Es posible que no necesite todo esto, pero al menos debe instalarlo libjpeg8-devy zlib1g-devadmitir JPEG y PNG.

Si está utilizando Ubuntu 12.04, use el siguiente 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

Las instrucciones detalladas se pueden encontrar en la documentación oficial de la almohada.

Instalación - Almohada (horquilla PIL) 2.6.1 documentación

Tony Joseph
fuente
1
Para python 3 run$ sudo apt-get install python3-dev
Michael Radionov
1
sudo apt-get install python-dev python-setuptools

y

sudo apt-get install libtiff5-dev libjpeg8-dev zlib1g-dev libfreetype6-dev liblcms2-dev libwebp-dev tcl8.6-dev tk8.6-dev python-tk
Manuel
fuente
2
Expande un poco tu respuesta.
TheWanderer
1
Bienvenido a Ask Ubuntu! Recomiendo editar esta respuesta para expandirla con detalles específicos sobre cómo hacerlo. (Consulte también ¿Cómo escribo una buena respuesta? Para obtener consejos generales sobre qué tipo de respuestas se consideran más valiosas en Ask Ubuntu.)
David Foerster
Esta es realmente la respuesta más correcta. No entiendo bien por qué fue rechazado y luego alguien lo reemplazó con una nueva respuesta: debería haber sido modificado con más explicaciones, ¿no?
benjaoming
Esto funcionó para mí en Debian 8, pero tuve que eliminar libjpeg8-dev de la lista.
Programador el
0

intenta instalar estas dependencias de desarrollo:

sudo apt-get install python-dev python-setuptools
Ros
fuente
1
Si bien esto técnicamente puede responder la pregunta, generalmente es mejor incluir un poco de explicación sobre lo que hará, en lugar de solo los comandos sin formato.
RPiAwesomeness
0

Además de las instalaciones anteriores, aún tuve el error anterior al instalar Pillow.

Para corregir el error, navegue a / usr / include:

cd /usr/include

Cree un enlace simbólico, apuntando al directorio freetype2:

ln -s freetype2 freetype
Ramon
fuente