Sur les tests Debian (Jessie), lorsque j'essaie d'installer PIL ou Pillow (bibliothèques d'imagerie python) dans un virtualenv
via, pip
j'obtiens l'erreur suivante:
running egg_info
writing Pillow.egg-info/PKG-INFO
writing top-level names to Pillow.egg-info/top_level.txt
writing dependency_links to Pillow.egg-info/dependency_links.txt
warning: manifest_maker: standard file '-c' not found
reading manifest file 'Pillow.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
writing manifest file 'Pillow.egg-info/SOURCES.txt'
running build_ext
building 'PIL._imaging' extension
creating build/temp.linux-x86_64-2.7/libImaging
x86_64-linux-gnu-gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -IlibImaging -I/usr/local/include -I/usr/include -I/usr/include/python2.7 -I/usr/include/x86_64-linux-gnu -c _imaging.c -o build/temp.linux-x86_64-2.7/_imaging.o
_imaging.c:76:20: fatal error: Python.h: No such file or directory
#include "Python.h"
^
compilation terminated.
error: command 'x86_64-linux-gnu-gcc' failed with exit status 1
J'ai installé toutes les dépendances pour Pillow, sur la base de mon expérience avec Wheezy, mais il semble que quelque chose soit différent avec les tests.
Aucune suggestion?
ÉDITER
En fait, j'ai découvert un autre problème avec libc6. La version que j'avais était expérimentale. Après l'avoir rétrogradé à la version de test, j'ai réinstallé toutes les dépendances mais maintenant j'obtiens une erreur différente:
building 'PIL._imagingft' extension
x86_64-linux-gnu-gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/freetype2 -IlibImaging -I/usr/include/tcl8.5 -I/usr/local/include -I/usr/include -I/usr/include/python2.7 -I/usr/include/x86_64-linux-gnu -c _imagingft.c -o build/temp.linux-x86_64-2.7/_imagingft.o
_imagingft.c:62:31: fatal error: freetype/fterrors.h: No such file or directory
#include <freetype/fterrors.h>
^
compilation terminated.
error: command 'x86_64-linux-gnu-gcc' failed with exit status 1
Il semble que la version expérimentale des libc6
choses foirées, mais je ne peux pas comprendre ce qui ne va pas. Aptitude ne montre aucune dépendance non satisfaite et aptitude install -f
ne fait rien.
De plus, si en effet les en-têtes linux sont pertinents, ceux que j'ai installés sont:
linux-headers-3.11-2-all
linux-headers-3.11-2-all-amd64
linux-headers-3.11-2-amd64
linux-headers-3.11-2-common
linux-headers-3.2.0-4-amd64
linux-headers-3.2.0-4-common
linux-headers-amd64
Réponses:
Dans Ubuntu 14.04, essayez:
la source
Vous avez besoin des en-têtes de développement python et éventuellement d'autres packages de développement. Le moyen le plus simple de les obtenir est:
la source
python-imaging
système avecaptitude
, même si je n'ai pas essayé de l'utiliser réellement.Après avoir installé la version de développement de Pillow, le deuxième problème a également été résolu. Cela peut être lié à ce problème .
Donc, pour résumer, la solution était:
Installez les dépendances comme l'a dit Dennis, qui dans mon cas incluait également la rétrogradation de la
experimental
version de libc6 avecaptitude remove libc6
, ce qui lui a donné l'option de la version du référentielDOWNGRADE
.Installation de la version coffre de l'oreiller avec
pip install git+git://github.com/python-imaging/Pillow.git
la source
J'utilise les tests Debian 7, et pour moi, cela a fonctionné:
Installer les dépendances comme l'a dit Dennis:
Faire un lien symbolique comme le suggère mrudult:
Installez Pillow comme d'habitude:
la source
Sur une nouvelle installation d'Ubuntu 14.04 sur DigitalOcean, j'ai pu résoudre ce problème en exécutant simplement
puis relancez la commande pip install à l'intérieur du python venv
la source