2010-06-03 9 views
42

Ich habe einen virtualenv mit der Option --no-site-packages erstellt. Ich erhalte eine Fehlermeldung versucht, PIL zu installieren:gcc Fehler beim Installieren von PIL in einem Python2.6 virtualenv

http://pastebin.com/SVqxs1sC

... 
error: command '/usr/bin/gcc' failed with exit status 1 

---------------------------------------- 
Command /home/dustin/.virtualenvs/django1.2/bin/python -c "import setuptools; __file__='/home/dustin/.virtualenvs/django1.2/build/pil/setup.py'; execfile('/home/dustin/.virtualenvs/django1.2/build/pil/setup.py')" install --single-version-externally-managed --record /tmp/pip-t_oikl-record/install-record.txt --install-headers /home/dustin/.virtualenvs/django1.2/include/site/python2.6 failed with error code 1 
Exception information: 
Traceback (most recent call last): 
    File "/home/dustin/.virtualenvs/django1.2/lib/python2.6/site-packages/pip-0.7.2-py2.6.egg/pip/basecommand.py", line 120, in main 
    self.run(options, args) 
    File "/home/dustin/.virtualenvs/django1.2/lib/python2.6/site-packages/pip-0.7.2-py2.6.egg/pip/commands/install.py", line 165, in run 
    requirement_set.install(install_options) 
    File "/home/dustin/.virtualenvs/django1.2/lib/python2.6/site-packages/pip-0.7.2-py2.6.egg/pip/req.py", line 1243, in install 
    requirement.install(install_options) 
    File "/home/dustin/.virtualenvs/django1.2/lib/python2.6/site-packages/pip-0.7.2-py2.6.egg/pip/req.py", line 540, in install 
    cwd=self.source_dir, filter_stdout=self._filter_install, show_stdout=False) 
    File "/home/dustin/.virtualenvs/django1.2/lib/python2.6/site-packages/pip-0.7.2-py2.6.egg/pip/__init__.py", line 226, in call_subprocess 
    % (command_desc, proc.returncode)) 
InstallationError: Command /home/dustin/.virtualenvs/django1.2/bin/python -c "import setuptools; __file__='/home/dustin/.virtualenvs/django1.2/build/pil/setup.py'; execfile('/home/dustin/.virtualenvs/django1.2/build/pil/setup.py')" install --single-version-externally-managed --record /tmp/pip-t_oikl-record/install-record.txt --install-headers /home/dustin/.virtualenvs/django1.2/include/site/python2.6 failed with error code 1 

Kann mir jemand helfen mit diesem?

Ich bin mit Ubuntu 10.04 (64 Bit)

Antwort

81

Sie müssen Python-dev-Paket installieren.

sudo apt-get install python-dev 
+5

Ich bin in einer Windows 7-Umgebung. Wie gehe ich vor, um python-dev zu installieren? – darren

+4

Ich musste 'python2.6-dev' in meiner Situation installieren, da virtualenv 2.6 verwendet. Just a heads up für alle anderen – agscala

+4

'yum install python-devel', wenn Sie auf CentOS/RHEL sind. – Banjer

3

an der vollständigen Liste der Suche auf Pastebin Link, um die Linie

_imaging.c:75:20: error: Python.h: No such file or directory 

ist das Problem.

Die gcc Kommandozeile hat

-I/usr/include/python2.6 

es so, dass sein würde, wo es zu finden erwarten würde, und das ist, wo es auf meinem Mandriva-System.

Vielleicht haben Sie Python installiert, aber nicht die Entwicklungsbibliotheken, die in der entsprechenden "-devel" Version des Pakets wären?

0

sudo apt-get install python-dev - sehr gut, aber , wenn Sie auf dem Host-System einige Pythons verwenden und python2.6 ist Standard.

Wenn Sie versuchen, zu:

virtualenv -p python2.7 

, gehen in das Verzeichnis bin, sagen Quelle aktivieren, als:

pip install PIL 

Sie erhalten Fehler wie folgt aus: _imaging.c: 75: 20 : Fehler: Python.h: Keine solche Datei oder das Verzeichnis

sollten Sie sagen !:

sudo apt-get install python2.7-dev 
Verwandte Themen