Ошибка GCC при попытке установить PIL в Python2.6 virtualenv - PullRequest
42 голосов
/ 03 июня 2010

Я создал virtualenv с опцией --no-site-packages. Я получаю сообщение об ошибке при попытке установить PIL:

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

Может ли кто-нибудь помочь мне с этим?

Я использую Ubuntu 10.04 (64 бит)

Ответы [ 3 ]

81 голосов
/ 03 июня 2010

Вам необходимо установить пакет python-dev.

sudo apt-get install python-dev
3 голосов
/ 03 июня 2010

Глядя на полный список на вашей ссылке, ссылка на строку

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

это проблема.

В командной строке gcc есть

-I/usr/include/python2.6

там, так что это было бы там, где он ожидал бы найти его, и именно там он находится в моей системе Mandriva.

Возможно, у вас установлен python, но нет библиотек разработки, которые были бы в соответствующей версии пакета "-devel"?

0 голосов
/ 29 ноября 2013

sudo apt-get установить python-dev - очень хорошо, но если вы используете несколько питонов в вашей хост-системе, и python2.6 используется по умолчанию.

Если вы попытаетесь:

 virtualenv -p python2.7

, перейдите в каталог bin, скажем, источник активирован, чем:

pip install PIL

Вы получаете сообщение об ошибке: _imaging.c: 75: 20: ошибка: Python.h: нет такого файла или каталога

Вы должны сказать !:

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