· 下面的指令都来自于这里。第一步是安装所必须的文件
sudo apt-get installlibprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-devprotobuf-compiler
sudo apt-get install --no-install-recommends libboost-all-dev
sudo apt-get installlibgflags-dev libgoogle-glog-dev liblmdb-dev
· 克隆Caffe资源库
cd ~/git
git clone https://github.com/BVLC/caffe.git
· 将其放置在自己要安装的文件目录下,本机放置在iware/ 下
cd caffe
cp Makefile.config.example Makefile.config
· 复制一份的原因是编译 caffe 时需要的是 Makefile.config 文件,而Makefile.config.example只是caffe 给出的配置文件例子,不能用来编译 caffe。
· 然后修改 Makefile.config文件,在 caffe 目录下打开该文件:
sudo gedit Makefile.config
1.应用 cudnn
将
#USE_CUDNN := 1
修改成:
USE_CUDNN := 1
2.应用 opencv 版本
将
#OPENCV_VERSION := 3
修改为:
OPENCV_VERSION := 3
3.使用 python 接口
将
#WITH_PYTHON_LAYER :=1
修改为
WITH_PYTHON_LAYER := 1
4.使用 OpenBLAS接口
将
BLAS := atlas
修改为
BLAS := open
4.修改 python 路径
INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include
LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib
修改为:
INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include /usr/include/hdf5/serial
LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib /usr/lib/x86_64-linux-gnu /usr/lib/x86_64-linux-gnu/hdf5/serial
然后修改 caffe 目录下的 Makefile 文件:
将:
NVCCFLAGS += -ccbin=$(CXX) -Xcompiler-fPIC $(COMMON_FLAGS)
替换为:
NVCCFLAGS += -D_FORCE_INLINES -ccbin=$(CXX) -Xcompiler-fPIC $(COMMON_FLAGS)
将:
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
然后修改/usr/local/cuda/include/host_config.h 文件(本机安装时没有修改)
将 #error-- unsupported GNU version! gcc versions later than 4.9 are not supported!
改为
//#error-- unsupported GNU version! gcc versions later than 4.9 are not supported!
安装需要的文件,构建Caffe和测试,运行测试确保所有测试都通过。注意,这都需要一段时间。
sudo pip install -r python/requirements.txt
make all -j $(($(nproc) + 1))
make test -j $(($(nproc) + 1))
make runtest -j $(($(nproc) + 1))
如果显示结果为上图所示,则表示 caffe 已经成功安装。
· 构建PyCaffe,Caffe的Python接口
make pycaffe -j $(($(nproc) + 1))
· 将Caffe添加到环境变量中
echo'export PYTHONPATH= ~/iware/caffe/python:$PYTHONPATH' >> ~/.bashrc
source ~/.bashrc
· 测试确保Caffe安装成功。当执行import命令的时候应该不会有警告/错误。
ipython
>>> import caffe
>>> exit()
然后安装 jupyter :
sudo pip install jupyter
· 1
安装完成后运行 notebook :
jupyter notebook
或
ipython notebook
就会在浏览器中打开notebook, 点击右上角的New-python2, 就可以新建一个网页一样的文件,扩展名为ipynb。在这个网页上,我们就可以像在命令行下面一样运行python代码了。输入代码后,按shift+enter运行,更多的快捷键,可点击上方的help-Keyboardshortcuts查看,或者先按esc退出编辑状态,再按h键查看。
本机安装过程中,由于前面环节安装cuda8.0后,没有讲其添加到环境变量,运行程序时错误一:libcudart.so.8.0:cannot open shared object file: No such file or directory
解决方法:
首先确认/etc/profile中的路径包含了cuda8.0的安装路径及相应的库文件
exportPATH=$PATH:/usr/local/cuda-8.0/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-8.0/lib64
export LIBRARY_PATH=$LIBRARY_PATH:/usr/local/cuda-8.0/lib64
$source /etc/profile
使配置文件生效,再次执行。
若仍提示相同的错误,则执行以下命令,将相应的库文件复制到/usr/lib
sudo cp /usr/local/cuda-8.0/lib64/libcudart.so.8.0/usr/local/lib/libcudart.so.8.0 && sudo ldconfig
sudo cp /usr/local/cuda-8.0/lib64/libcublas.so.8.0/usr/local/lib/libcublas.so.8.0 && sudo ldconfig
sudo cp /usr/local/cuda-8.0/lib64/libcurand.so.8.0/usr/local/lib/libcurand.so.8.0 && sudo ldconfig
至此,问题就解决
错误二:"libcudnn.so.5cannot open shared object file: No such file or directory"
解决方法:
直接简单粗暴;
sudo cp/usr/local/cuda-8.0/lib64/libcudnn.so /usr/local/lib/libcudnn.so &&sudo ldconfig
sudo cp /usr/local/cuda-8.0/lib64/libcudnn.so.5/usr/local/lib/libcudnn.so.5 && sudo ldconfig
sudo cp/usr/local/cuda-8.0/lib64/libcudnn.so.5.1.5 /usr/local/lib/libcudnn.so.5.1.5&& sudo ldconfig
本机安装过程中,还由于前面环节错误安装numpy.
>>> import numpy
>>> import caffe
时出错,解决方法是重新pip安装的numpy以及一系列的库。