2013-03-26 13 views
66

Jestem bardzo nowy python.I zainstalowany kontroler openflow na moim Linux PC (Ubunutu 12.04) nazywa RYU używając:Python.h brakuje Ubuntu 12.04

sudo pip install ryu 

starałem się uruchomić plik przy użyciu Pythona ryu-manager, jak pokazano poniżej.

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 

Potem próbowałem zainstalować gevent używając:

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 

Co jest przyczyną tego błędu? Próbowałem zlokalizować plik Python.h używając:

sudo locate Python.h 

nie mogłem go znaleźć na moim system.However jeśli biegnę:

python -V 

mam wyjścia:

Python 2.7.3 

Czy w systemie powinien być Python.h? Jeśli tak, to co powinienem zainstalować, aby go uzyskać?

+1

W tym pytaniu występuje wiele literówek. Byłoby pomocne, gdybyś je naprawił. – talonmies

+8

Lokalizacja plików nagłówka jest związana z programowaniem, głosowaniem na ponowne otwarcie. – vitaut

+0

Uderza ten problem, próbując uruchomić mój kod Django pod NGINX. To zdecydowanie związane z programowaniem. –

Odpowiedz

178

ten powinien zrobić:

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

będzie zainstalować brakujące nagłówków. Bardzo mi to pomogło.

+16

Jeśli używasz innej wersji Pythona, na przykład 3.3: sudo apt-get install python3.3-dev – FreshPow

+0

W systemie Ubuntu 14.04 zainstalowano odpowiednią wersję polecenia "sudo apt-get install python3" bez konieczności określania wersji wiersz poleceń. –

8

Zainstalować gevent bezpośrednio - sudo apt-get install python-gevent.

34

Nawet jeśli masz zainstalowany Python, plik nagłówkowy i biblioteka zwykle nie są instalowane domyślnie. W systemie Ubuntu są dostarczane w osobnym pakiecie o nazwie python-dev.

Powiązane problemy