写在前面:之前一直在搞keras,最近由于某些需求,需要学习caffe,在此记录caffe的安装记录。默认已经安装了cuda
如果是从其他的深度学习平台迁移到Caffe,那么按照这个教程来就可以了。
第一步:git clone https://github.com/BVLC/caffe.git,然后安装下面的一对依赖文件。
apt-get install libatlas-base-dev libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libboost-all-dev libhdf5-serial-dev libgflags-dev libgoogle-glog-dev liblmdb-dev protobuf-compiler
第二步,要安装opencv,我也不知道为什么要安装,不安装就是不行,注意,一定要进入到caffe的目录下面。
cd caffe
sudo git clone https://github.com/jayrambhia/Install-OpenCV
cd Install-OpenCV/Ubuntu
sudo sh dependencies.sh
cd 2.4
sudo sh opencv2_4_10.sh
第三步,如果你安装了cudnn,那就先别急着编译,修改Makefile文件使得可以使用cudnn加速
sudo vi Makefile.config
将USE_CUDNN 行的注释符号#去除,即 USE_CUDNN := 1,大概在第5行的样子,在使用vim的时候可以查找一下。
第四步,编译,不过这里可能会遇到一个小问题,那就是“fatal error: hdf5.h”,解决方案如下
1:在Makefile.config文件中,添加/usr/include/hdf5/serial/ 到 INCLUDE_DIRS,也就是把下面第一行代码改为第二行代码。
INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include
INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include /usr/include/hdf5/serial/
2:在Makefile文件中,把 hdf5_hl 和hdf5修改为hdf5_serial_hl 和 hdf5_serial,也就是把下面第一行代码改为第二行代码。
LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_hl hdf5
LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_serial_hl hdf5_serial
接下来就可以正常编译了
cd ~/caffe
sudo cp Makefile.config.example Makefile.config
make all
这样就可以了,在命令行中输入echo $?如果返回的是0,那么就编译安装成功了,接下来就是测试一个小例子了。