OSX 10.9.5を実行しているMacでcaffeをコンパイルしましたが、pycaffeをコンパイルしようとしていることは知っています。 caffeルートフォルダーでmakepycaffeを実行すると、次のようになります。
CXX/LD -o python/caffe/_caffe.so python/caffe/_caffe.cpp
python/caffe/_caffe.cpp:1:10: fatal error: 'Python.h' file not found
#include <Python.h> // NOLINT(build/include_alpha)
^
1 error generated.
make: *** [python/caffe/_caffe.so] Error 1
どうすればこれを修正できますか?
おそらく、Makefile.configに問題があります。 PYTHONPATHとはどうすればわかりますか?
コメントを見ると、Anacondaを使用していることがわかります。 _Makefile.config
_ では、Anaconda専用の行のコメントを解除する必要があります。
_# Anaconda Python distribution is quite popular. Include path:
# Verify anaconda location, sometimes it's in root.
# ANACONDA_HOME := $(HOME)/anaconda
# PYTHON_INCLUDE := $(ANACONDA_HOME)/include \
# $(ANACONDA_HOME)/include/python2.7 \
# $(ANACONDA_HOME)/lib/python2.7/site-packages/numpy/core/include \
# We need to be able to find libpythonX.X.so or .dylib.
PYTHON_LIB := /usr/lib
# PYTHON_LIB := $(ANACONDA_HOME)/lib
_
_Python.h
_の実行を確認できるように、_Sudo find / -name 'Python.h'
_は$(ANACONDA_HOME)/include/python2.7
にあります。
私もこの問題に遭遇しました。 PYTHON_INCLUDE
PATHを設定しました
PYTHON_INCLUDE := $(ANACONDA_HOME)/include \
$(ANACONDA_HOME)/include/python2.7
しかし、それでもPython.h
を見つけることができません
したがって、次のように、コンパイラに手動でインクルードパスを指定します。
export CPLUS_INCLUDE_PATH=/home/woolawren/anaconda2/include/python2.7/:$CPLUS_INCLUDE_PATH
anaconda2を使用しない場合は、次を使用できます。
export CPLUS_INCLUDE_PATH=/usr/include/python2.7:$CPLUS_INCLUDE_PATH
これで「makepycaffe」ができました。
Makefile.configで以下のコードのコメントを解除しました
PYTHON_INCLUDE := /usr/include/python3.5m \
/usr/lib/python3.5/dist-packages/numpy/core/include
それから須藤はpycaffeを作りました。
出来た。
ArchLinuxへの面倒なCaffeのインストールを終えたところです。うまくいけば、私のインストールノート(以下のリンク)が他の人の助けになるでしょう。
私のCaffeインストールに固有ですが、これらのメモは「Python.h」インストールエラー(この質問)、および別のSO質問、
https://stackoverflow.com/questions/28177298/import-caffe-error
My Gistファイル(メモ):
https://Gist.github.com/victoriastuart/fb2cb22209ccb2771963a25c06221213