1. 程式人生 > >./include/caffe/data_layers.hpp:9:18: fatal error: hdf5.h: No such file or directory

./include/caffe/data_layers.hpp:9:18: fatal error: hdf5.h: No such file or directory

再次編譯,報錯:
src/caffe/layers/hdf5_data_layer.cpp:13:18: fatal error: hdf5.h: No such file or directory
 #include "hdf5.h"
記得上面已經安裝了hdf5-devel,怎麼會出這個錯?檢視一下,發現yum這個沒找到hdf5-devel,所以也就沒有安裝。
在docs/installion.md中,建議:but we suggest first installing the [Anaconda](https://store.continuum.io/cshop/anaconda/) Python distribution, which provides most of the necessary packages, as well as the `hdf5` library dependency.


準備安裝hdf5:
http://www.hdfgroup.org/ftp/HDF5/current/src/hdf5-1.8.16.tar
解壓後:
./configure --prefix=/usr/local/hdf5-1.8.3   ##指定安裝路徑,否則會預設安裝到當前路徑下。
make ##4分鐘左右

make install


此時,在Makefile.config中增加HDF5_DIRS的路徑到搜尋路徑下:
HDF5_DIRS :=/usr/local/hdf5-1.8.3/
# Whatever else you find you need goes here.
INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include $(HDF5_DIRS)/include

LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib $(HDF5_DIRS)/lib

看來CAFFE編譯是一步一個坑啊。

這個錯誤表明,我們的hdf5.h這個標頭檔案的路徑沒有被找到,如果你沒有安裝HDF5這個檔案 ,那當然是找不到的。

再者,就然你安裝了這個檔案也可能找不到,那麼我們怎麼辦。

我們用locate hdf5.h找到你安裝的路徑,然後在makefile.conf檔案中相應指定就好了。

那麼,最終總結的經驗就是遇山修路,過水搭橋。

好,接下來繼續編譯,可能雙碰到問題了。哎呀,又一個坑。


***********************CAFFE又一坑**************************

AR -o .build_release/lib/libcaffe.a
LD -o .build_release/lib/libcaffe.so
/usr/bin/ld: cannot find -lcblas
/usr/bin/ld: cannot find -latlas
collect2: error: ld returned 1 exit status
Makefile:493: recipe for target '.build_release/lib/libcaffe.so' failed
make: *** [.build_release/lib/libcaffe.so] Error 1
make: *** Waiting for unfinished jobs....