Installiere uwsgi 1.2.5 über pip

22

Herzlich willkommen,

Derzeit versuche ich, das neueste uwsgi auf meinem VPS (Ubuntu 11.10) zu installieren, basierend auf den Anweisungen auf der Website http://projects.unbit.it/uwsgi/wiki/Quickstart

pip install uwsgi

Während der Kompilierung werden einige Fehler angezeigt:

...
[gcc -pthread] spooler.o
*** uWSGI compiling embedded plugins ***
[gcc -pthread] plugins/python/python_plugin.o
Complete output from command /usr/bin/python -c "import setuptools;__file__='/etc/apt/sources.list.d/build/uwsgi/setup.py';exec(compile(open(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --single-version-externally-managed --record /tmp/pip-joud1I-record/install-record.txt:
running install

In file included from plugins/python/python_plugin.c:1:0:

plugins/python/uwsgi_python.h:2:20: fatal error: Python.h: No such file or directory

compilation terminated.

using profile: buildconf/default.ini

detected include path: ['/usr/lib/gcc/i686-linux-gnu/4.6.1/include','/usr/local/include', '/usr/lib/gcc/i686-linux-gnu/4.6.1/include-fixed', '/usr/include/i386-linux-gnu', '/usr/include']

Patching "bin_name" to properly install_scripts dir
...

Und schließlich sehe ich:

...

[gcc -pthread] spooler.o

*** uWSGI compiling embedded plugins ***

[gcc -pthread] plugins/python/python_plugin.o

----------------------------------------
Command /usr/bin/python -c "import setuptools;__file__='/etc/apt/sources.list.d/build/uwsgi/setup.py';exec(compile(open(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --single-version-externally-managed --record /tmp/pip-joud1I-record/install-record.txt failed with error code 1 in /etc/apt/sources.list.d/build/uwsgi
Storing complete log in /root/.pip/pip.log

Hat jemand irgendwelche Vorschläge, wie ich das neueste uwsgi installieren kann?

Grüße, Grzegorz

Grzegorz
quelle
1
Nachdem ich alle obigen Ratschläge befolgt hatte, stellte sich heraus, dass ich anstelle von pip3 install uwsgi den Befehl als root ausführen sollte: sudo pip3 install uwsgi
tomekwi

Antworten:

38

plugins / python / uwsgi_python.h: 2: 20: schwerwiegender Fehler: Python.h: Keine solche Datei oder Verzeichnis

Um C-Erweiterungen für Python zu kompilieren, benötigen Sie Python-Entwicklungsdateien:

$ sudo apt-get install python2.7-dev
jfs
quelle
@JFSebastian: Bitte werfen Sie einen Blick auf die entsprechenden askubuntu.com/q/499206/306605 . Vielen Dank.
Pepr
@ JFSebastian: ... oder stackoverflow.com/q/24822829/1346705
Pepr
Hatte den gleichen Fehler bei Debian Wheezy mit Python 3.4, dies half, danke!
25.
a python2.7-devinstalliert haben und immer noch den Fehler sehen
yentsun
1

Dies gilt auch für den Fall, dass jemand anderes auf dieses Problem stößt. Obwohl wir python2.7-dev erfolgreich installiert hatten, ist dieser Fehler dennoch aufgetreten.

Was anscheinend das Problem war, war die Unfähigkeit von gcc, die Bibliotheken zu finden, die in dem Build-Skript-Pip enthalten waren, der ausgeführt werden wollte.

Tatsächlich haben wir die uwsgi pip zip erhalten: https://pypi.python.org/packages/source/u/uWSGI/uwsgi-1.9.20.tar.gz

und ändern Sie es dann manuell wie mit den folgenden Schritten -

Zuerst haben wir es entpackt:

$ tar xvzf uwsgi-1.9.20.tar.gz

In diesen Fällen haben wir die Datei: bearbeitet uwsgiconfig.pyund Zeile 213 ersetzt:

cmdline = "%s -c %s -o %s %s" % (GCC, cflags, objfile, srcfile)

zu:

cmdline = "%s -I/usr/include/libxml2 -c %s -o %s %s" % (GCC, cflags, objfile, srcfile)

Grundsätzlich gcc wissen lassen, dass Ihre Bibliotheken auf dem neuesten Stand sind /usr/include/libxml2(dies war zumindest unser Fall)

Danach haben wir den Ordner erneut gepackt:

$ tar cvf uwsgi-1.9.20.tar uwsgi-1.9.20/

$ gzip uwsgi-1.9.20.tar

Und benutzt pip mit diesem gzip:

$ sudo pip install uwsgi-1.9.20.tar.gz

Und das hat funktioniert ..

Hoffe das hilft jemandem!

Wilfo
quelle
Ihre gcc-Installation ist kaputt, wenn keine Header gefunden werden, die über Standardpakete installiert wurden
jfs
0

Um unter Cygwin über zu installieren pip, benötigen Sie die folgenden Pakete:

  • gcc-core
  • gcc-g ++ (wahrscheinlich)
  • libcrypt-devel
  • libintl-devel
  • python3
  • python3-devel
tivnet
quelle