CentOS 安装caffe步骤(非root、仅CPU、OpenBLAS、Intel MKL)
来源:互联网 发布:淘宝q币劵 lol半价 编辑:程序博客网 时间:2024/05/23 00:05
安装过程出现了各种问题,在网上找了各种的解决方案,好在最后成功了,以下是我的安装情况:
一、安装依赖的库
1、protobuf下载:https://github.com/google/protobuf/releases/download/v3.4.0/protobuf-cpp-3.4.0.zip
./configure --prefix=指定安装目录
make(make -j24 加速)
make check
make install
可能遇到的问题:usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.11' not found (required by /data03/WaterMark/protobuf-3.4.0/src/.libs/libprotobuf.so.14)
系统使用的c++版本过低,使用strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX 可以查看当前支持的版本
解决办法:
(1)系统升级libstdc++.so(需root权限)
(2)下载高版本的c++,然后设置LD_LIBRARY_PATH,再执行上面的步骤
2、leveldb
下载:https://github.com/google/leveldb/archive/v1.20.zip
安装:make
生成的动态库在out-shared目录
3、snappy
下载:https://github.com/google/snappy/releases/download/1.1.4/snappy-1.1.4.tar.gz
./configure --prefix=指定安装目录
make
make install
4、opencv
机器上已有动态库,没安装,直接拷贝了include和libopencv*
5、boost
下载:https://dl.bintray.com/boostorg/release/1.64.0/source/boost_1_64_0.tar.gz
cd boost_1_64_0
./bootstrap.sh –with-libraries=all --prefix=指定安装目录 –with-toolset==gcc-4.4(此参数可以指定使用的gcc版本)
./b2
./b2 install
6、hdf5
下载:https://www.hdfgroup.org/downloads/hdf5/source-code/ 下载的gzip类型
./configure --prefix=指定安装目录
make(时间长)
make check(时间长)
make install
make check-install
7、glog
wget --no-check-certificate https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/google-glog/glog-0.3.3.tar.gz
./configure --prefix=指定安装目录
make
make install
8、gflags
wget --no-check-certificate https://github.com/schuhschuh/gflags/archive/master.zip
mkdir build && cd build
export CXXFLAGS="-fPIC" && cmake .. && make VERBOSE=1
make && make install
安装完的include和lib在build/
遇到的问题:安装包里没有configue,需要安装cmake
cmake下载:https://cmake.org/files/v3.9/cmake-3.9.1.tar.gz
9、lmdb
下载页面:https://github.com/LMDB/lmdb
cd lmdb/libraries/liblmdb
make && make install
安装完的include和lib在当前目录下
10、atlas
可用于安装的选项:(ATLAS、Intel MKL、OpenBLAS,速度:Intel MKL (70+毫秒) > OpenBLAS (1秒))
(1)由于安装ATLAS的时候报错,选择安装OpenBLAS:
下载:http://github.com/xianyi/OpenBLAS/archive/v0.2.20.tar.gz
make NO_LAPACK=1(不包含LAPACK)
make PREFIX=指定安装目录 install
遇到的问题:
make的时候如果不设置“NO_LAPACK=1”,会报错:cannot find -lgfortran
(2)由于OpenBLAS速度慢,换用Intel MKL(针对cpu优化了,速度快)
下载页面:https://software.intel.com/en-us/mkl
需要先注册(免费),然后得到一个授权码(个人信息里可以找到Serial Number)
我下载的版本是:l_mkl_2017.3.196.tgz
解压缩之后执行里面的install.sh,按照提示进行安装,里面有选项可以选择安装目录,授权的时候输入上面的Serial Number
如果中途退出的话,服务器里会残留安装信息,在清理之前无法重新安装,怎么清理、保留多久均不知道
此版本要求centos版本6以上
安装完成之后需要找到mklvars.sh,并执行source mklvars.sh intel64(此步骤怀疑可省略,待验证)
如果非root权限,需要使用的文件为:
安装目录/mkl/bin
安装目录/mkl/include
安装目录/mkl/lib/intel64
安装目录/compilers_and_libraries/linux/lib/intel64
11、cuda
用于gpu,此处不安装
二、安装caffe
1、下载:https://github.com/BVLC/caffe/archive/master.zip
2、修改配置文件:
cp Makefile.config.example Makefile.config
如果没有GPU,取消注释:CPU_ONLY := 1
如果安装了OpenBLAS,将BLAS := atlas改成 BLAS := open
(如果安装了Intel MKL,将BLAS := atlas改成 BLAS := mkl)
设置BLAS_INCLUDE和BLAS_LIB
如果使用了opencv3版本,注释掉OPENCV_VERSION := 3
由于不需要使用python,注释掉PYTHON_INCLUDE目录
make all -j24(24表示计算机内核数)
make test
make runtest
可能出现的问题:
(1)./include/caffe/util/signal_handler.h:4:34: 致命错误:caffe/proto/caffe.pb.h:没有那个文件或目录
解决方案:
# 先进入caffe源码的根目录,然后执行:
protoc src/caffe/proto/caffe.proto --cpp_out=.
mkdir include/caffe/proto
mv src/caffe/proto/caffe.pb.h include/caffe/proto
(2)依赖库未安装在默认目录的情况,需要在makefile里指定路径,如增加:
CUSTOM_INCLUDE := 指定目录/include/
CUSTOM_LIB := 指定目录/lib/
LIBRARY_DIRS += $(CUSTOM_LIB)
INCLUDE_DIRS += $(CUSTOM_INCLUDE)
(3)系统默认使用的c++版本是:CXX ?= /usr/bin/g++,如果该版本过低,在makefile里改成指定版本路径的
(4)make runtest的时候报错:
symbol lookup error: libmkl_intel_thread.so: undefined symbol: omp_get_num_procs
原因:安装完Intel MKL之后,没有把安装目录/compilers_and_libraries/linux/lib/intel64里的动态库拷过来
1、安装gcc
(1)下载4.8.0:wget http://ftp.gnu.org/gnu/gcc/gcc-4.8.0/gcc-4.8.0.tar.bz2
tar -jxvf gcc-4.8.0.tar.bz2
(2)下载编译所需的依赖项
cd gcc-4.8.0
./contrib/download_prerequisites
cd ..
(3)建立编译输出目录
mkdir build-gcc-4.8.0
(4)进入此目录,执行以下命令,生成makefile文件
cd build-gcc-4.8.0
../gcc-4.8.0/configure --enable-checking=release --enable-languages=c,c++ --disable-multilib --prefix=指定安装目录
make -j24
make install
另外,以上安装过程由于非root权限,可能需要将安装库的相关目录加入到环境变量:
PATH、CPLUS_INCLUDE_PAT、C_INCLUDE_PATH、LD_LIBRARY_PATH、LIBRARY_PATH
比如高版本的gcc,需要设置PATH,设置完成之后调用gcc -v,g++ -v 进行验证
阅读全文
0 0
- CentOS 安装caffe步骤(非root、仅CPU、OpenBLAS、Intel MKL)
- 非root用户安装OpenBLAS
- Caffe:CPU模式下使用Intel MKL做mnist训练
- Ubuntu14.04 安装Caffe(仅CPU)
- Ubuntu14.04 安装Caffe(仅CPU)
- Ubuntu14.04 安装Caffe(仅CPU)
- Ubuntu16.04安装caffe(仅cpu)
- Ubuntu14.04 安装Caffe(仅CPU)
- 高性能Numpy/Scipy加速:使用Intel MKL和Intel Compilers或OpenBLAS(待续)
- 【ubuntu14.04配置caffe】二——安装intel MKL
- ubuntu16.04安装caffe教程(仅cpu)
- Ubuntu16.04-x64安装caffe(仅CPU)并测试
- 比较OpenBLAS,Intel MKL和Eigen的矩阵相乘性能
- 比较OpenBLAS,Intel MKL和Eigen的矩阵相乘性能
- [caffe笔记001]:caffe依赖库安装(非root)
- win7 caffe 仅cpu 安装教程 + caffe使用
- caffe-windows(仅cpu)配置过程
- Ubuntu搭建Caffe(仅CPU)
- mybaitis逆向工程实例
- amerge amix
- Git安装与配置
- 2017/08/24 备忘
- 112家IT互联网公司薪水一览表
- CentOS 安装caffe步骤(非root、仅CPU、OpenBLAS、Intel MKL)
- js省市联动
- 数学中的常见的距离公式
- [Java]复习笔记(一)--语言特性
- POJ
- arm编译PHP,nginx及问题
- 华为OJ——统计每个月兔子数目
- Xml之Sax解析
- 京东iOS客户端组件管理实践