web-dev-qa-db-ja.com

致命的なエラー:opencvのインストール中に 'Python.h'ファイルが見つかりません

Python for Mac OS X 10.10.5でopencv 3.1をインストールしようとしています。ここに概説されている手順に従っています- http://www.pyimagesearch.com/2015/06/15/install-opencv-3-0-and-python-2-7-on-osx /

すべてのセットアップ後にopencvを実際にインストールしようとすると、次のエラーが表示されます。

.../opencv/modules/python/src2/cv2.cpp:6:10: fatal error: 
  'Python.h' file not found
 #include <Python.h>
          ^

StackOverflowを見てみると、この問題に直面しているほとんどの人がAn​​acondaを使用していることがわかりましたが、これは私の場合ではありません。誰かがこれを修正するために私を正しい方向に向けることができたら素晴らしいでしょう。

おかげで、

18
Sumanth

* .cppファイルの1つを作成中にPython.hが見つからない場合は、次のENV変数を設定します

export CPLUS_INCLUDE_PATH=/System/Library/Frameworks/Python.framework/Headers

システム内のパスの存在を確認し、Python.hがあることを確認してください。

13
Sergey Sargsyan

私はEl Capitanを使用していますが、Pythonヘッダーへのパスに大きな違いがあるとは思いません。

/System/Library/Frameworks/Python.framework/Headers/Python.h

あなたが試すことができます:

export C_INCLUDE_PATH=/System/Library/Frameworks/Python.framework/Headers

その後、残りの手順を試してください。

11
polarise

走る

brew install python

または

brew upgrade python

これを実行すると、インストールしたいものすべて(私の場合はvim)が成功します。

4
Feuda

OSXでも同じ問題が発生しましたが、CPLUS_INCLUDE_PATH環境変数を設定して修正しました。また、複雑なものがあるかもしれないアナコンダ環境で構築していました。

export CPLUS_INCLUDE_PATH=~/anaconda/envs/py27/include/python2.7

cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=~/anaconda/envs/py27/share \
    -D PYTHON2_PACKAGES_PATH=~/anaconda/envs/py27/lib/python2.7/site-packages \
    -D PYTHON2_LIBRARY=~/anaconda/envs/py27/bin/python \
    -D PYTHON_EXECUTABLE=~/anaconda/envs/py27/bin/python \
    -D PYTHON2_INCLUDE_DIR=~/anaconda/envs/py27/include/python2.7 \
    -D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON \
    -D BUILD_EXAMPLES=ON \
    -D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib/modules ..
2
yoziru-desu

最初に、brewを使用してpythonをインストールし、システムpython libバイナリを使用していることを確認してください。これはブログで言及されました。 。

次に、cmakeコマンドのpythonバージョンは、brewがインストールしたものと一致する必要があります。これを再確認する必要があります。

1
Jonathan Lau

はい、cmakeコマンドで使用されるパスを修正します。ファイルシステムに存在する必要があります。私の場合、python 3.5をインストールし、元のドキュメントではpython 3.4。

私はpython2.7をインストールすることで問題を修正しました。どうやらpython 3.4を使用してコンパイルしていたようです。

brew install python@2
brew link python@2
0
Younes Nj

私のアプローチは異なっていましたが、基本的にジョナサン・ラウが言及したものです。

Pyenvとcondaを使用し、問題を引き起こしたpython libパスを変更しました。

  1. .bashrcのpyenvのPATH設定をコメント化
  2. ターミナルを再起動して、必要なものをインストールします(私の場合はvim)
  3. .bashrcを元に戻す
0
H. Jiang