web-dev-qa-db-ja.com

virtualenvでのuwsgiのインストールエラー

Linux ubuntuの仮想環境にuswgiをインストールしようとしています、python 3.5.2

pip install uwsgi

このエラーが出ました

Failed building wheel for uwsgi

そして、インストールログの最後に

    *** uWSGI compiling embedded plugins ***
[thread 0][x86_64-linux-gnu-gcc -pthread] plugins/python/python_plugin.o
[thread 1][x86_64-linux-gnu-gcc -pthread] plugins/python/pyutils.o
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.
In file included from plugins/python/pyutils.c:1:0:
plugins/python/uwsgi_python.h:2:20: fatal error: Python.h: No such file or directory
compilation terminated.

----------------------------------------

Command "/home/ubuntu/envflask/env/bin/python3 -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-wthov1ur/uwsgi/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /tmp/pip-quiupta5-record/install-record.txt --single-version-externally-managed --compile --install-headers /home/ubuntu/envflask/env/include/site/python3.5/uwsgi" failed with error code 1 in /tmp/pip-build-wthov1ur/uwsgi/
  • Linux 4.4.0-66-generic x86_64
  • Python 3.5.2

これに対する解決策はありますか?ありがとう

22
Alvaro B

Python3.5開発ファイルをインストールする必要があるため、次のコマンドを実行します。

apt-get install python3.5-dev

上記のコマンドは、ソースからuWSGIをビルドするためにPython 3ヘッダーをインストールします。

30
McGrady

apt-get install build-essential python3-dev

UWSGIから ドキュメント

uWSGIは(大きな)Cアプリケーションなので、Cコンパイラ(gccやclangなど)とPython開発ヘッダー。Debianベースのディストリビューションではapt-get install build-essential python-devが必要です。十分な。

Python3の場合、それをpython3-devに変更するだけです。

$ python3 --version Python 3.5.2 $ pip3 freeze uWSGI==2.0.15

19
JCotton

python 3.6で同じ問題に直面している人は誰でも、それを解決するためのステップがあります:

このppaからpython 3.6開発ツール:

Sudo add-apt-repository ppa:deadsnakes/ppa

次に、パッケージリストを更新します。

Sudo apt-get update

次に、3.6バージョンの開発ツールをインストールします

apt-get install build-essential python3.6-dev

で仮想環境をアクティブにしてから、uwsgiをインストールします。

pip install uwsgi
7

Debianには、サポートされるすべてのPython 3つの開発パッケージに依存するパッケージがあります。

apt-get install python3-all-dev
5
neclude

python3.6だけでuwsgiをインストールしているときに同じ問題に直面した場合

apt-get install python3.6-dev

私の場合、builds経由でuwsgiをインストールしました

注:有効なPPAを追加する必要がある場合があります

3
user1671599

OpenSUSE(タンブルウィード)の場合、

  1. Venvを無効にして削除しました
  2. yast2経由でpython3-develをインストール
  3. 次に、venvを再作成してアクティブ化しました
  4. およびpip install uwsgi
0
Aaron Williams

uwsgiコマンドをインストールする場合は、

curl http://uwsgi.it/install | bash -s default /tmp/uwsgi

mv/tmp/uwsgiから/ usr/localまで

0
penny chan