一 写在前面
配置caffe,需要进行编译,很多时候出错的原因都是编译文件的问题,所以只要编译文件没有问题,并且相关的库没有缺少就没有问题,当然还需要添加环境变量。(务必填写自己相对应的路径)
在配置的过程中,感谢一些大神的分享,特附上链接
https://blog.csdn.net/CAU_Ayao/article/details/80578600
二.配置
1.基本依赖库的安装
在终端输入
sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev
sudo apt-get install libhdf5-serial-dev protobuf-compiler
sudo apt-get install --no-install-recommends libboost-all-dev
sudo apt-get install libopenblas-dev liblapack-dev libatlas-base-dev
sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev
2.配置
#首先我们要从GitHub的远端下载caffe的源码
git clone https://github.com/BVLC/caffe.git
从终端中进入caffe的文件夹
cd caffe sudo cp Makefile.config.example Makefile.config
gedit Makefile.config
修改Makefile.config的配置文件
#将第5行注释去除
USE_CUDNN:= 1
#将第21行注释去除
OPENCV_VERSION := 3
将第37和38行注释或者删除
修改后如图所示
将第51行BLAS:= atlas注销,换成BLAS := open
将Python2环境注销,换成Anaconda3下的Python环境
将PYTHON_LIB:= /usr/lib注释
取消PYTHON_LIB:=
(
A
N
A
C
O
N
D
A
H
O
M
E
)
/
l
i
b
的
注
释
!
[
在
这
里
插
入
图
片
描
述
]
(
h
t
t
p
s
:
/
/
i
m
g
−
b
l
o
g
.
c
s
d
n
i
m
g
.
c
n
/
20191106093903132.
p
n
g
)
I
N
C
L
U
D
E
D
I
R
S
:
=
(ANACONDA_HOME)/lib的注释 ![在这里插入图片描述](https://img-blog.csdnimg.cn/20191106093903132.png) INCLUDE_DIRS :=
(ANACONDAHOME)/lib的注释![在这里插入图片描述](https://img−blog.csdnimg.cn/20191106093903132.png)INCLUDEDIRS:=(PYTHON_INCLUDE) /usr/local/include /usr/local/hdf5/include
LIBRARY_DIRS :=$(PYTHON_LIB) /usr/local/lib /usr/lib /usr/local/hdf5/lib
修改Makefile文件
在终端输入:
sudo gedit Makefile
#这行去掉
NVCCFLAGS+= -ccbin=$(CXX) -Xcompiler -fPIC KaTeX parse error: Expected 'EOF', got '#' at position 16: (COMMON_FLAGS) #̲添加这行 NVCCFLAGS …(CXX)-Xcompiler -fPIC $(COMMON_FLAGS)
3.Caffe源码中安装Python的必要项
#在终端输入
cd /home/liguangyao/programming/caffe/python
for req in $(cat requirements.txt); do pip install $req; done
编译
#进入caffe的根目录下
cd /home/liguangyao/Programming/caffe
sudo make clean
sudo make all -j4 //(-j4表示使用4核处理器执行当前指令)
sudo make test -j4 //最好加上sudo防止有些文件的访问权限不够
sudo make runtest -j4
sudo make pycaffe -j4 //配置pycaffe
返回上一目录,输入Python测试
输入import caffe进行测试,出现如下结果即证明配置成功
三.遇到的问题
1.“libcudnn.so.5 cannot 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
2.import caffe出错
遇到这种问题,是python的接口位置不对,路径错误。
解决方法:
通过echo KaTeX parse error: Expected 'EOF', got '#' at position 59: …fe-SSD/python #̲修改环境变量 3.出现错误如下…(HOME)/anaconda3/lib
参考链接:https://blog.csdn.net/w5688414/article/details/79482482
4.caffe的python接口配置问题
在使用make pycaffe -j8命令完成caffe的python接口生成之后,还需要将python接口的路径进行设置。
路径设置一般有两种方式(具体方法百度),为方便使用,这里设置为永久路径。
使用命令
gedit ~/.bashrc
来对路径进行设置,在文件最后一行加入路径:
export PYTHONPATH=/home/cheng/caffe/python/:/home/cheng/caffe/python/caffe/
source ~/.bashrc #使用其命令对其更新