2010-06-03 9 views
42

Ho creato un virtualenv con l'opzione --no-site-packages. Ottengo un errore nel tentativo di installare PIL:Errore gcc nel tentativo di installare PIL in un 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 

qualcuno può aiutarmi con questo?

Io corro Ubuntu 10.04 (64 bit)

risposta

81

È necessario installare il pacchetto python-dev.

sudo apt-get install python-dev 
+5

Sono in un ambiente Windows 7. Come faccio a installare python-dev? – darren

+4

Ho dovuto installare 'python2.6-dev' nella mia situazione dal momento che virtualenv utilizza 2.6. Solo un avviso per chiunque altro – agscala

+4

'yum installa python-devel' se sei su CentOS/RHEL. – Banjer

3

Guardando la lista completa sul tuo link pastebin la linea

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

è il problema.

La riga di comando gcc ha

-I/usr/include/python2.6 

là in modo che sarebbe dove si aspetterebbe di trovarla ed è lì che è sul mio sistema Mandriva.

Forse avete installato python ma non le librerie di sviluppo che sarebbero nella corrispondente versione "-devel" del pacchetto?

0

sudo apt-get install python-dev - è molto buona, ma se si utilizzano alcuni pitoni sul sistema host e python2.6 è di default.

Se si tenta di:

virtualenv -p python2.7 

, andare alla directory bin, dice fonte attiva, di:

pip install PIL 

Si ottiene errore come questo: _imaging.c: 75: 20 : errore: Python.h: No such file or directory

Si dovrebbe dire !:

sudo apt-get install python2.7-dev 
Problemi correlati