Ubuntu16.04下配置caffe(仅CPU)

前端之家收集整理的这篇文章主要介绍了Ubuntu16.04下配置caffe(仅CPU)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

第二次配置caffe环境,依旧把之前犯过的错误重新走了一遍,不会配置的地方还是忘了,所以打算通过博客记录下来,方便以后学习使用。

1.安装依赖包

$ sudo apt-get@H_502_7@ install libprotobuf-dev@H_502_7@ libleveldb-dev@H_502_7@ libsnappy-dev@H_502_7@ libopencv-dev@H_502_7@ libhdf5-serial@H_502_7@-dev@H_502_7@ protobuf-compiler@H_502_7@
$ sudo apt-get@H_502_7@ install --@H_502_7@no-install@H_502_7@-recommends@H_502_7@ libboost-all@H_502_7@-dev@H_502_7@
$ sudo apt-get@H_502_7@ install libopenblas-dev@H_502_7@ liblapack-dev@H_502_7@ libatlas-base@H_502_7@-dev@H_502_7@
$ sudo apt-get@H_502_7@ install libgflags-dev@H_502_7@ libgoogle-glog@H_502_7@-dev@H_502_7@ liblmdb-dev@H_502_7@

注:如果提示”安装无法定位软件包”,可以尝试sudo apt-get update命令

2.安装caffe

$ @H_502_7@cd ~
$ @H_502_7@git clone git:@H_502_7@//github.com/@H_502_7@BVLC@H_502_7@/caffe.git

3.编译caffe

$ cd caffe
$ cp@H_502_7@ Makefile.config@H_502_7@.example@H_502_7@ Makefile.config@H_502_7@ (复制一份Makefile.config@H_502_7@文件)

在Makefile.config文件中把cpu_ONLY := 1的注释给去掉,就是去掉前面的#号

接下来在caffe根目录下执行下面命令

$ @H_502_7@make all

在这个命令后,我遇到了一个报错信息,

./include@H_502_7@/caffe/util/hdf5.hpp:6@H_502_7@:18@H_502_7@: fatal error: hdf5.h: No such file@H_502_7@ or@H_502_7@ directory@H_502_7@

这是hdf5路径问题造成的,可以通过下面命令来获得hdf5的路径,

$ sudo@H_502_7@ find / -name hdf5.h

我找到的hdf5.h的路径为:/usr/include/hdf5/serial/hdf5.h,于是在makefile.config文件中,把文件改成下面所示:

再执行一遍上述命令,继续报错,这次是/usr/bin/ld: cannot find -lhdf5
于是同上面一个处理 去找libhdf5.so
配置文件改为:

LIBRARY_DIRS := $(PYTHON_LIB) /usr/lib@H_502_7@/x86_64-linux-gnu/hdf5/serial \
            /usr/local/lib@H_502_7@ /usr/lib@H_502_7@
INCLUDE_DIRS@H_502_7@ :@H_502_7@= $(@H_502_7@PYTHON_INCLUDE@H_502_7@) /usr/include@H_502_7@/hdf5/serial \
            /usr/local/include@H_502_7@
/usr/bin/ld@H_502_7@: cannot find -lcblas
/usr/bin/ld@H_502_7@: cannot find -latlas

解决

sudo apt-get@H_502_7@ install libatlas-base@H_502_7@-dev@H_502_7@

接着执行下面命令:

make@H_502_7@ test

最后,

$ @H_502_7@make runtest

4.编译python接口

安装pip

$ sudo apt-get@H_502_7@ install python-pip@H_502_7@

执行安装依赖
根据caffe/python目录下的requirements.txt中列出的清单安装即可。
fortran编译器(gfortran)使为了安装scipy,否则会报错。

cd@H_502_7@ ~/caffe
sudo@H_502_7@ apt-get install gfortran
cd@H_502_7@ ./python
for@H_502_7@ req in@H_502_7@ $(cat requirements.txt); do@H_502_7@ pip install $req@H_502_7@; done@H_502_7@

回到caffe根目录

sudo@H_502_7@ pip install -r python/requirements.txt

编译pycaffe接口

make pycaffe -j8@H_502_7@

此时报错

python/caffe/_caffe.cpp@H_502_7@:10@H_502_7@:31@H_502_7@: fatal error: numpy/arrayobject.h@H_502_7@: 没有那个文件或目录

于是,输入如下命令即可

sudo apt-get@H_502_7@ install python-numpy@H_502_7@

在配置过程中会遇到各种问题,各种报错,最有效的办法就是百度啦。感谢以下博客
参考博客
http://blog.csdn.net/striker_v/article/details/51615197
http://blog.csdn.net/u011762313/article/details/47262549
http://www.cnblogs.com/xuanxufeng/p/6016945.html

猜你在找的Ubuntu相关文章