linux编译对cpu要求,Ubuntu 16.04 下编译安装CPU版Caffe

本文档详述了在Ubuntu系统中安装Caffe的步骤,包括使用脚本安装依赖、启用CPU_ONLY模式、修改Makefile.config配置、利用Anaconda解决编译错误,并针对libhdf5相关库的缺失问题进行解决。通过这些步骤,可以成功在Ubuntu上编译并运行Caffe。
摘要由CSDN通过智能技术生成

参考(3ks):http://www.Linuxdiyf.com/Linux/22442.html,但可能是同原文的caffe版本有所差异,具体操作有些不同。

1)首先可以使用这个脚本做环境依赖项的准备,脚本来自于《深度学习 caffe实战》一书。

#!/bin/bash

sudo apt-getinstall git

sudo apt-getinstall libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-devlibhdf5-serial-dev protobuf-compiler

sudo apt-getinstall --no-install-recommends libboost-all-dev

sudo apt-getinstall libatlas-base-dev

sudo apt-getinstall python-dev

sudo apt-getinstall libgflags-dev libgoogle-glog-dev liblmdb-dev

git clonehttps://github.com/bvlc/caffe.git

cd caffe/

mvMakefile.config.example Makefile.config

2)准备好之后需要先修改配置文件以启用CPU_ONLY模式。打开配置文件Makefile.config,去掉 CPU_ONLY 前面的注释#号。

# CPU-onlyswitch (uncomment to build without GPU support).

CPU_ONLY := 1

3)下面可以开始编译(make)了,但是一般情况下你还会遇到各种错误,因此这里推荐一个较为简单的方法,就是使用Anaconda的库,因为这个库包含了大量的我们可能需要的库,这样可以可以避免很多坑。Anaconda下载目前有Python3.6和Python2.7版本,我们下载Linux下Python2.7的64bit(X86)版本。下载完成后bash执行安装文件:sudo bash Anaconda2****.sh(注意cd到下载目录或带路径)把Anaconda装上以后,需要修改 Makefile.config 里面的设置以便能使用Anaconda的库。

首先,将python及python库的路径指向Anaconda自带的。

ANACONDA_HOME :=$(HOME)/anaconda2 #这个是你anaconda所在路径,注意这里的2是原来配置文件没有的,要自己加上

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

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

#PYTHON_INCLUDE:= /usr/include/python2.7 \

#      /usr/lib/python2.7/dist-packages/numpy/core/include

#PYTHON_LIB :=/usr/lib

还需要在库目录这一项加入路径/usr/lib/x86_64-Linux-gnu(这一步不必)

# Whatever elseyou 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

4)接下来就可以make了,一般就没有什么问题了,在接下来的make runtest 这一步我又遇到了找不到文件的错误,错误代码如下。

.build_release/tools/caffe:error while loading shared libraries: libhdf5_hl.so.100: cannot open sharedobject file: No such file or directory

注意这里报错的库文件(libhdf5_hl.so.100)在不同时期的caffe上可能有所差别,要根据自己报错的库文件做修改。

Anaconda自带的库能找到相同的库文件libhdf5_hl.so.100的,这是一个软链指向了libhdf5_hl.so.10.0.1这个文件。因此参考这个issues后,可以在 /usr/lib 及/usr/lib/x86_64-Linux-gnu 分别放了一个软链指向了Anaconda的库中libhdf5_hl.so.10.0.1。

136785.html

sudo cp -s$HOME/anaconda2/lib/libhdf5_hl.so.100.0.1 /usr/lib/libhdf5_hl.so.100

sudo cp -s$HOME/anaconda2/lib/libhdf5_hl.so.100.0.1/usr/lib/x86_64-Linux-gnu/libhdf5_hl.so.100

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

.build_release/tools/caffe:error while loading shared libraries: libhdf5.so.101: cannot open shared objectfile: No such file or directory

如法炮制,找到原库文件是libhdf5.so.101.0.0:

136785.html

sudo cp -s$HOME/anaconda2/lib/libhdf5.so.101.0.0 /usr/lib/libhdf5.so.101

sudo cp -s$HOME/anaconda2/lib/libhdf5.so.101.0.0 /usr/lib/x86_64-Linux-gnu/libhdf5.so.101

这次再运行

make runtest

,成功了!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值