网上关于caffe的安装教程非常多,但是关于每一步是否操作成功,出现了什么样的错误又该如何处理没有给出说明。因为大家的操作系统的环境千差万别,按照博客中的教程一步步的安装,最后可能失败——这是很常见的哦。有的教程甚至省略了一些细节部分,让小白更不知道如何判断每一步是否操作成功,如何处理出现的错误。
作者花费了很长时间才成功地将caffe装完,期间遇到好多错误,多次重装操作系统。现在将经验写下来,一方面为了和大家分享,讨论;另一方面是为了记录一下下~~~
环境操作系统: Ubuntu 14.04
GCC/G++:4.7.x
OpenCV: 2.4.11和3.0.0
Matlab :R2014b(a)
Python: 2.7
综述
0.准备工作
1.安装GCC4.7和G++4.7并降级
2.安装显卡驱动
3.安装cuda和cudnn
4.安装Matlab
5.安装OpenCV
6.安装Python依赖包
7.安装caffe
安装caffe这已经是caffe安装过程的最后一步了。但是行百里者,半于九十,因此还要小心。
1. 安装Google Logging Library(glog) # 解压 tar -zxvf glog-0.3.3.tar.gz # 切换路径 cd glog-0.3.3 sudo ./configure sudo make –j sudo make install 2. 安装其它依赖执行以下命令即可。
sudo apt-get install -y libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libboost-all-dev libhdf5-serial-dev sudo apt-get install -y libgflags-dev libgoogle-glog-dev liblmdb-dev protobuf-compiler protobuf-c-compiler python-pandas 3. 编辑Makefile.config文件操作命令如下所示。
unzip caffe-master.zip #本地解压caffe-master #切换路径 cd /caffe-master #caffe源文件中没有Makefile.config,需要复制Makefile.config.example cp Makefile.config.example Makefile.config #编辑Makefile.config vi Makefile.config
修改Makefile.config
取消第5行的注释,即将 #USE_CUDNN=1 改为 USE_CUDNN=1;
如果使用本教程系列安装的,就不需要修改BLAS=atlas,如果是参考欧新宇的教程,安装了MKL,需要改成BLAS=mkl;
启用CUDNN,加注释: CPU_ONLY:=1 改成 # CPU_ONLY:=1;
配置路径,实现caffe对Python和Matlab接口的支持:
PYTHON_LIB := /usr/local/lib MATLAB_DIR := /usr/local/MATLAB/R2014a 4. 编辑Makefile文件如果openCV版本是2.4.x,此小节可以不再阅读
如果openCV版本3.0,还需要修改Makefile文件,实现对OpenCV 3.x的支持。
在Makefile文件中查找“Derive include and lib directories”一节,修改“LIBRARIES +=”的最后一行,增加opencv_imgcodecs,修改之后为:
LIBRARIES += opencv_core opencv_highgui opencv_imgproc opencv_imgcodecs 5. 编译caffe-master依次执行下面的命令,编译caffe:
make all -j make test -j make runtest -j
runtest执行结束之后,如下图所示。这样子就说明安装成功了。
编译Python和Matlab用到的caffe文件
make pycaffe -j make matcaffe -jpycaffe和matcaffe编译完成后,如下图所示:
编译过程中可能会遇到错误,比如./include/caffe/util/cudnn.hpp:8:34: fatal error: caffe/proto/caffe.pb.h: No such file or director,这是因为protobuf和pillow没有安装,或者是通过apt-get安装的。使用pip重新安装一遍即可解决问题。删除caffe-mast(提前保存Makefile.config和Makefile),解压,解压重新编译。
pip install protobuf --upgrade -i .douban.com/simple pip install pillow --upgrade -i .douban.com/simple 6.设置Python环境变量此时虽然编译完成,但是python还不能使用caffe,需要设置python的环境变量,将其caffe/python路径添加到python环境变量中。