CentOSマシンでCで記述されたPython拡張機能をコンパイルしようとしています。
error: Python.h: No such file or directory
Apt-getを使用してpython-devをインストールしているubuntuで正常に動作します。
を使用してpython-develをインストールしてみました
yum install python-devel
しかし、すでにインストールされています。このエラーを修正するにはどうすればよいですか?
Python3を使用している場合、python34-develをインストールできます
EPELリポジトリ で利用可能で、 python34-develパッケージ が利用可能
このコマンドを実行してインストールするだけです
yum install python34-devel
それが助けになることを願っています
* noteこの時点でpython34-devel
はpython 3の最新バージョンです
CentOS 7.4
Python 3.6.6
:yum -y install python36-devel
Python 2
:yum -y install python-devel
Ubuntu
Python 3.6
:apt-get install libpython3.6-dev
インストールpython3.4
(ピップを含む)&python3.4-dev
Centos6.Xのパッケージ:
yum install http://dl.iuscommunity.org/pub/ius/stable/CentOS/6/x86_64/python34u-3.4.2-1.ius.centos6.x86_64.rpm
yum install http://dl.iuscommunity.org/pub/ius/stable/CentOS/6/x86_64/python34u-devel-3.4.2-1.ius.centos6.x86_64.rpm
デフォルトPythonは2.7でしたが、pipは3.4に対して実行されていたため、2.7を使用したかったので、同様の問題が発生しました。yum remove python34-pip
およびyum install python2-pip
。
私も同様の問題を抱えていました。
./python/py_defines.h:39:20:致命的なエラー:Python.h:そのようなファイルまたはディレクトリはありません
一方、findコマンドはpython.h
が存在します。
上記のソリューションは機能しませんでしたが、以下のコマンドの実行は機能しました。
yum install python27-python-devel.x86_64
大した違いはないが、多くの時間を無駄にした。
これは、Python持っています!
dev
パッケージ、Python XXXのバージョンXXX)が必要です。 https://centos.pkgs.org/7/iusで検索できます-x86_64 。
たとえば、IUSからPython 3.6.5がある場合、 https://centos.pkgs.org/7/ius-x86_64/python36u-devel- 3.6.5-1.ius.centos7.x86_64.rpm.html 。