Python.h отсутствует в Ubuntu 12.04

Я очень новичок в python. Я установил контроллер openflow на своем Linux-ПК (Ubunutu 12.04) под названием RYU, используя:

 sudo  pip install ryu

Я пытался запустить файл python с помощью ryu-manager, как показано ниже.

sudo ryu-manager simple_switch.py 
Traceback (most recent call last):
  File "/usr/local/bin/ryu-manager", line 19, in <module>
    import gevent
ImportError: No module named gevent

Затем я попытался установить gevent, используя:

sudo pip install gevent
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/python2.7 -c gevent/core.c -o build/temp.linux-x86_64-2.7/gevent/core.o
gevent/core.c:4:20: fatal error: Python.h: No such file or directory

compilation terminated.

error: command 'gcc' failed with exit status 1

В чем причина этой ошибки? Я попытался найти файл Python.h, используя:

  sudo locate Python.h

Я не мог найти его в своей системе. Однако, если я запустил:

python -V

Я получаю вывод:

Python 2.7.3

Должен ли Python.h находиться в системе? Если да, то что я должен установить, чтобы получить его?

Ответ 1

Это должно сделать это:

sudo apt-get update; sudo apt-get install python-dev -y

Он установит любые отсутствующие заголовки. Это очень помогло мне.

Ответ 2

Даже если у вас установлен Python, файл заголовка и библиотека обычно не устанавливаются по умолчанию. На Ubuntu они входят в отдельный пакет под названием python-dev.

Ответ 3

Установить gevent напрямую - sudo apt-get install python-gevent.