Installer uwsgi 1.2.5 via pip


22

Bienvenue,

Actuellement, j'essaie d'installer le dernier uwsgi sur mon VPS (Ubuntu 11.10) sur la base des instructions du site http://projects.unbit.it/uwsgi/wiki/Quickstart

pip install uwsgi

Pendant la compilation, je vois quelques erreurs:

...
[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
...

Et enfin je vois:

...

[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

Quelqu'un a-t-il des suggestions sur la façon d'installer le dernier uwsgi?

Cordialement, Grzegorz


1
Ce qui s'est avéré après avoir suivi tous les conseils ci-dessus, c'est qu'au lieu d'exécuter pip3 install uwsgi, je devrais exécuter la commande en tant que root: sudo pip3 install uwsgi
tomekwi

Réponses:


38

plugins / python / uwsgi_python.h: 2: 20: erreur fatale: Python.h: aucun fichier ou répertoire de ce type

Pour compiler les extensions C pour Python, vous avez besoin de fichiers de développement Python:

$ sudo apt-get install python2.7-dev

@JFSebastian: S'il vous plaît, jetez un œil sur le askubuntu.com/q/499206/306605 . Merci.
pepr


Eu la même erreur sur Debian Wheezy avec Python 3.4, cela a aidé, merci!
fnkr

a ont python2.7-devinstallé et voient toujours l'erreur
yentsun

1

Il en sera de même au cas où quelqu'un d'autre rencontrerait ce problème - Même si nous avons installé python2.7-dev avec succès, nous avons toujours cette erreur.

Ce qui était apparemment le problème était l'incapacité de gcc à trouver les bibliothèques qui étaient incluses dans le script de construction que pip essayait d'exécuter.

nous avons finalement obtenu le zip pip uwsgi: https://pypi.python.org/packages/source/u/uWSGI/uwsgi-1.9.20.tar.gz

puis en le modifiant manuellement comme avec les étapes suivantes -

Tout d'abord, nous l'avons décompressé:

$ tar xvzf uwsgi-1.9.20.tar.gz

Ensuite, nous avons édité le fichier:, en uwsgiconfig.pyremplaçant la ligne 213:

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

à:

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

Fondamentalement, faire savoir à gcc que vos bibliothèques sont à /usr/include/libxml2(c'était notre cas au moins)

Après cela, nous avons refait le dossier:

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

$ gzip uwsgi-1.9.20.tar

Et utilisé pip avec ce gzip:

$ sudo pip install uwsgi-1.9.20.tar.gz

Et cela a fonctionné ..

J'espère que cela aide quelqu'un!


votre installation gcc est cassée si vous ne trouvez pas les en-têtes installés via des packages standard
jfs

0

Pour installer sous Cygwin via pip, vous avez besoin des packages suivants:

  • gcc-core
  • gcc-g ++ (probablement)
  • libcrypt-devel
  • libintl-devel
  • python3
  • python3-devel
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.