Caffe的下载及安装

Caffe在VMware workstation下的安装-Redhat7.3
有鉴于在网络上很多对caffe的安装是基于双系统,而且使用Ubuntu的居多,本文使用的是在Windows平台下安装VMware workstations 10.0.1来安装RHEL7.3来完成的。

下文涉及到的相关资料可从网盘下载
链接:https://pan.baidu.com/s/10AxMLQwC-g5Pwp1oT4vhsQ
提取码:o29s

1, VMware10.0.1, RHEL7.3 (硬盘需要IDE格式,否则安装RHEL时会找不到硬盘,虚拟机内存尽量大于10G,否则编译的时候容易引发g++internal error)
2, 安装163 及aliyun yum源
cd /etc/yum.repos.d
[[email protected] yum.repos.d]$ cat 163.repo
[163]
name=163
baseurl=http://mirrors.163.com/centos/7/os/x86_64/
gpgcheck=0
enabled=1
gpgkey=http://mirrors.163.com/centos/7/os/x86_64/RPM-GPG-KEY-CentOS-7
[[email protected] yum.repos.d]$
[[email protected] yum.repos.d]$ cat redhat-media.repo
[redhat-media]
name=redhat-media
baseurl=https://mirrors.aliyun.com/centos/7/os/x86_64/
enabled=1
gpgcheck=0
gpgkey=https://mirrors.aliyun.com/centos/7/os/x86_64/RPM-GPG-KEY-CentOS-7
[[email protected] yum.repos.d]$
3, mkdir /home/bruce/local_install, upload below packages to this directory.
cmake-3.13.1-Linux-x86_64.sh
opencv-3.0.0
OpenBlas-0.2.14.tar
caffe-master
hdf5-1.8.9.tar
protobuf-2.5.0.tar
snappy-1.1.1.tar
glog-0.3.3.tar
leveldb-1.7.0.tar
gflags-master
4, sudo yum install gcc-c++ boost-devel
5, 安装cmake(必须升级到ver3,否则后续的编译无法使用)
a) chmod +x cmake-3.13.1-Linux-x86_64.sh
b) sudo ./cmake-3.13.1-Linux-x86_64.sh
c) sudo ln -s /home/bruce/local_install/ cmake-3.13.1-Linux-x86_64/bin/* /usr/local/bin (Use absolute path.)
d) Test your results with cmake –version
Caffe的下载及安装
6, Common installation完成,做一次snapshot,后续安装容易出错,可以回滚到此节点
7, 安装gflags-devel(没有安装包的可以从GitHub下载)wget https://github.com/schuhschuh/gflags/archive/master.zip
a) unzip gflags-master.zip
b) cd gflags-master
c) mkdir build && cd build
d) cmake …
e) ccmake …
f) 此时出现安装配置界面
Caffe的下载及安装

将BUILD_SHARED_LIBS改为ON, CMAKE_INSTALL_PREFIX改成/home/bruce/local_install, 修改完后按C,再按G生成makefile
g) make && make install
h) 检查gflag是否安装成功
查看/home/bruce/local_install/include 及lib下是否有gflag的包
8, Glog的安装
a) tar zxvf glog-0.3.3.tar.gz
b) cd glog-0.3.3
c) ./configure --prefix=/home/bruce/local_install/
d) make
e) make install
f) 检查glog的安装是否成功,另外注意安装过程中如果出现大量的waring或者error,建议尝试其他版本的glog
9, atlas-devel的安装(建议做一次snapshot,此安装容易出错)
9-1
tar zxvf OpenBlas-0.2.14.tar.gz
cd OpenBLAS-0.2.14/
make –j
如果编译过程中出现如下错误,建议改用9-2来安装openblas

9-2, 不使用OpenBlas-0.2.14.tar.gz,直接从网络下载源码安装

参考https://www.cnblogs.com/llxrl/p/5292119.html

1 git clone https://github.com/xianyi/OpenBLAS.git
2 cd OpenBLAS
3 make -j8
4 make PREFIX=/home/bruce/local_install/blas install
  1. 修改Caffe配置文件以下几行 (可以在编译caffe代码的时候再做)

BLAS := open
BLAS_INCLUDE := /home/bruce/local_install/blas/include
BLAS_LIB := /home/bruce/local_install/blas/lib

  1. 添加环境变量
    在 /etc/profile 末尾加上 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/bruce/local_install/blas/lib/ 然后 sudo source /etc/profile
    注:直接安装在/usr/local 下应该就不需要添加环境变量

  2. 编译Caffe

  3. 可在环境变量中设置OpenBLAS所使用的CPU线程数
    export OPENBLAS_NUM_THREADS=4

10, hdf5的安装
a) tar jxvf hdf5-1.8.9.tar.bz2
b) cd hdf5-1.8.9
c) ./configure --prefix=/home/bruce/local_install/
d) make -j
e) make install
相关的.h文件会在/home/bruce/local_install/include下

11, Protobuf的安装(可以直接使用yum protobuf-develinstall来安装)
a) tar zxvf protobuf-2.5.0.tar.gz
b) cd protobuf-2.5.0
c) ./configure --prefix=/home/bruce/local_install/
d) make
e) make install
export PATH=/home/bruce/local_install/bin/:$PATH
也可以将上面一行写人/home/bruce/.bashrc中,以实现会话时环境自动配置。
在caffe根目录,修改Makefile.config, 在INCLUDE_DIRS 后加入/home/bruce/local_isntall/include, 在LIBRARY_DIRS中加入/home/bruce/local_install/lib

12, OpenCV的安装(可以直接使用yum opencv-devel install来安装)
a) unzip opencv-3.0.0.zip
b) cd opencv-3.0.0
c) mkdir build
d) cd build/
e) cmake …
f) ccmake …
g) make
h) sudo make install
安装目录在/usr/local/下,可以从include, share, bin,lib下查看
13, Lmdb的安装
可以从网络下载git clone https://github.com/LMDB/lmdb,也可从网盘下载打包好的gz文件
a) tar zxvf lmdb.tar.gz
b) cd lmdb/libraries/liblmdb
c) make
d) cp -p lmdb.h /home/bruce/local_install/include/
e) cp -p liblmdb.so /home/bruce/local_install/lib/
14, leveldb的安装
a) tar zxvf leveldb-1.7.0.tar.gz
b) cd leveldb-1.7.0
c) make
d) cp -r include/leveldb ~/local_install/include/
e) cp libleveldb.so* ~/local_install/lib/
15, snappy的安装
a) tar zxvf snappy-1.1.1.tar.gz
b) cd snappy-1.1.1
c) ./configure --prefix=/home/bruce/local_install/
d) make
e) make install
16, caffe源码的编译
可以从GitHub克隆,也可从网盘下载
a) git clone https://github.com/bvlc/caffe.git
将caffe整个目录拷贝到/home/bruce/local_install/下
b) mv caffe /home/bruce/local_install/
c) cd caffe
d) mv Makefile.config.example Makefile.config
e) 编辑Makefile.config
Line 8, 打开CPU_ONLY选项
Line 97,98,将local_install加入
Caffe的下载及安装

继续修改blas选项
Caffe的下载及安装
务必打开open_cv,否则编译无法通过,会出现/usr/local/lib/libopencv_imgcodecs.so.3.0: error adding symbols: DSO missing from command line
Caffe的下载及安装

Caffe的下载及安装

f) make -j
caffe源码编译结束,如下
Caffe的下载及安装

Note:
在安装glog时,如果如上文写的自定义了安装目录,编译caffe时会有不少warning,但不影响最后的编译。如果将glog安装在默认目录,则不会有任何warning。
默认安装如下:
./configure
make
sudo make install
glog相关.h 和lib将会在/usr/local/include下