caffe redHat6 安装教程
机器学习 RedHat Caffe
说明:
在安装caffe之前,必须先安装必要的软件
1. 安装yum
2. 升级 gcc(不升级对本次安装caffe无影响)安装低版本
yum install gcc
下载gcc4.7以上版本:gcc-4.7.4.tar.gz
解压
tar –zxf gcc-4.7.4.tar.gz
进入解压后的目录
cd gcc-4.7.4
安装依赖库
./contrib/download_prerequisites
新建目录存放编译结果
mkdir gcc-build-4.7.4
进入新目录
cd gcc-build-4.7.4
编译安装
../gcc-4.8.1/configure --enable-checking=release --enable-languages=c,c++ --disable-multilib
make -j4
make install
切换到新版本(通过软链接)
进入原来安装路径 cd /usr/bin
软链接 gcc : In -s gcc /usr/local/bin/gcc
软链接 g++ : In -s g++ /usr/local/bin/g++
查看版本
gcc -v
3.安装cuda
4. 安装protobuf
5. 安装openCV使用git上自动安装脚本安装
git clone https://github.com/jayrambhia/Install-OpenCV
cd Install-OpenCV/RedHat
./opencv_latest.sh
下载安装包安装
参考 http://www.rthpc.com/plus/view.php?aid=381
http://blog.csdn.net/sysuwuhongpeng/article/details/45485719
unzip opencv.zip
cd opencv
sed -i '/string(MD5/d' cmake/cl2cpp.cmake
mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D CUDA_GENERATION=Kepler ..
make
make install
6. 安装lmdb(不影响最终caffe的安装)下载安装
7. 安装openCVinstall opencv-devel
8. 安装glog下载安装
9. 安装gflags下载安装
10. 安装boost下载boost
解压安装
./booststrap.sh
./bjam
11. 安装snappyyum install snappy-devel
12. 安装leveldbyum install leveldb
13. 安装hdf5
14. 安装python和pip
15. 安装atlasyum install atlas-devel
16. 安装caffe解压进入目录
unzip caffe-master.zip
cd caffe-master
复制编译配置文件
cp Makefile.config.example Makefile.config
修改配置文件
vim Makefile
COMMON_FLAGS = –I/opt/protobuf/include –I/opt/hdf5/include
LDFLAGS = –L/opt/protobuf/lib –L/opt/hdf5/lib
vim Makefile.config
LIBRARY_DIRS 加上 /usr/lib64/atlas
编译
make all
编译出错解决
提示“src/caffe/util/math_functions.cu(140): error: calling a host function("std::signbit ") from a globalfunction("caffe::sgnbit_kernel ") is not allowed”
修改 ./include/caffe/util/math_functions.hpp 224行
1.如果using std::signbit;语句未被注释 则注释掉:using std::signbit;
2.如果已被注释,则去掉注释,并
修改:DEFINE_CAFFE_CPU_UNARY_FUNC(sgnbit, y[i] = signbit(x[i]));
为:DEFINE_CAFFE_CPU_UNARY_FUNC(sgnbit, y[i] = std::signbit(x[i]));
配置运行环境
caffe 运行时需要调用 protobuf 和 hdf5 的库,我们在 /etc/ld.so.conf.d 目录下新建一个 caffe.conf 文件,将所需要用到的库的目录写入
vim /etc/ld.so.conf.d/caffe.conf
添加:
/usr/local/cuda/lib64
/opt/protobuf/lib
/opt/hdf5/lib
/usr/local/lib
保存
生效:ldconfig
编译test
make test
编译runtest
make runtest
make runtest出错解决
error:/usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.15' not found
解决办法:更新libsdc++.so.6
解压 ar -x libstdc++6_4.7.2-5_i386.deb && tar xvf data.tar.gz
进入 xx/usr/lib/x86_64-linux-gnu
复制到/usr/lib64 : cp libstdc++.so.6.0.17 /usr/lib64
进入 /usr/lib64
删除原来的libstdc++.so.6 : rm -rf libstdc++.so.6
硬链接: ln libstdc++.so.6.0.17 libstdc++.so.6
查看版本:strings /usr/lib/libstdc++.so.6 | grep GLIBCXX
最后说明安装过程中如果出现error,根据error情况安装缺少的包,首选使用yum安装