ubuntu 16.04 无GPU版caffe安装简记

来源:互联网 发布:c语言流程图怎么画 编辑:程序博客网 时间:2024/06/05 14:14

reference:http://blog.csdn.net/firethelife/article/details/51926754

MAINLY SOLVE THE PROBLEM OF THE 

Error loading shared library libhdf5_hl.so

历经千辛万苦,终于把caffe给装上了,我这次装的是无GPU版本,希望能把自己的安装过程踩过的坑记录下来,给别人或将来的自己做个参考。

由于没有装GPU,所以英伟达的驱动什么的都不用装了。这里先把《深度学习 caffe实战》一书中的一个脚本贴出来供大家参考

#!/bin/bashsudo apt-get install gitsudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compilersudo apt-get install --no-install-recommends libboost-all-devsudo apt-get install libatlas-base-devsudo apt-get install python-devsudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-devgit clone https://github.com/bvlc/caffe.gitcd caffe/mv Makefile.config.example Makefile.config
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

去掉 CPU_ONLY 前面的# 号。

# CPU-only switch (uncomment to build without GPU support).CPU_ONLY := 1
  • 1
  • 2
  • 1
  • 2

就可以make了,一般情况下你还会遇到各种错误,其实这里推荐一个较为简单的方法,就是使用Anaconda的库,因为这个库包含了大量的我们可能需要的库,这样可以可以避免很多坑。

把Anaconda装上以后,需要修改 Makefile.config 里面的设置以便能使用Anaconda的库。

  1. 将python及python库的路径指向Anaconda自带的。
ANACONDA_HOME := $(HOME)/anaconda2 #这个是你anaconda所在路径PYTHON_INCLUDE := $(ANACONDA_HOME)/include \         $(ANACONDA_HOME)/include/python2.7 \         $(ANACONDA_HOME)/lib/python2.7/site-packages/numpy/core/include \PYTHON_LIB := $(ANACONDA_HOME)/lib
  • 1
  • 2
  • 3
  • 4
  • 5
  • 1
  • 2
  • 3
  • 4
  • 5

此时需要把原来的python及python库的路径注释掉。

#PYTHON_INCLUDE := /usr/include/python2.7 \#       /usr/lib/python2.7/dist-packages/numpy/core/include#PYTHON_LIB := /usr/lib
  • 1
  • 2
  • 3
  • 1
  • 2
  • 3

还需要在库目录这一项加入路径/usr/lib/x86_64-linux-gnu

# Whatever else you find you need goes here.INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib /usr/lib/x86_64-linux-gnu
  • 1
  • 2
  • 3
  • 1
  • 2
  • 3
  1. 接下来就可以make了,一般就没有什么问题了,在接下来的make runtest 这一步我又遇到了找不到文件的错误,错误代码如下。
.build_release/tools/caffe: error while loading shared libraries: libhdf5_hl.so.10: cannot open shared object file: No such file or directory
  • 1
  • 1

但是我查看 Anaconda自带的库时是能找到 libhdf5_hl.so.10的,这是一个软链指向了libhdf5_hl.so.10.0.2这个文件。 在参考了这个issues后,我在 /usr/lib 及 /usr/lib/x86_64-linux-gnu 分别放了一个软链指向了Anaconda的库中libhdf5_hl.so.10.0.2。

sudo cp -s $HOME/anaconda2/lib/libhdf5_hl.so.10.0.2 /usr/lib/libhdf5_hl.so.10sudo cp -s $HOME/anaconda2/lib/libhdf5_hl.so.10.0.2 /usr/lib/x86_64-linux-gnu/libhdf5_hl.so.10sudo ldconfig
  • 1
  • 2
  • 3
  • 1
  • 2
  • 3

再次尝试运行 make runtest 这次发现错误变成了

.build_release/tools/caffe: error while loading shared libraries: libhdf5.so.10: cannot open shared object file: No such file or directory
  • 1
  • 1

如法炮制

sudo cp -s $HOME/anaconda2/lib/libhdf5.so.10.1.0 /usr/lib/libhdf5.so.10sudo cp -s $HOME/anaconda2/lib/libhdf5.so.10.1.0 /usr/lib/x86_64-linux-gnu/libhdf5.so.10sudo ldconfig
  • 1
  • 2
  • 3
  • 1
  • 2
  • 3

这次再运行 make runtest ,成功了!

后记

很早以前就开始着手装caffe,无奈的是怎么装都不成功,也放弃了好多次,这次借助于阅读学习《深度学习 21天实战caffe》这个机会又试着在ubuntu平台下把caffe装了一遍,虽然过程也有许多波折,但最后终于成功了,喜悦之情难以言表,所以就有了这一篇简单的记录。

0 0
原创粉丝点击