CentOS7系统安装Caffe

来源:互联网 发布:mac查看内存占用 编辑:程序博客网 时间:2024/05/29 04:40

一,安装基础开发工具和开发包

  • 基本开发工具

    sudo yum -y groupinstall "Development Tools"
  • 添加EPEL repositories

    sudo rpm -Uvh http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm

安装gcc:yum install gcc 

安装g++:yum install gcc-c++


git安装与卸载的方式

1.查看系统是否已经安装git

git --version

2.CentOS7 yum 安装git

yum install git

3.安装成功

yum --version

 

4.卸载git

yum remove git

二,安装通用依赖

sudo yum install protobuf-devel leveldb-devel snappy-devel opencv-devel boost-devel hdf5-devel atlas-devel

三,安装其他依赖

sudo yum install gflags-devel glog-devel lmdb-devel


注意:如果需要手动安装包,那么必须安装cmake:

如果发现没有找到上面的包,可以采用手动安装的方法,系统需要提前装好最新的cmake版本,我装的是3.4.0版本。 
cmake版本传送cmake3.4.0二进制版本 
cmake的配置过程可以参考Centos6.3安装配置cmake

在上面安装依赖的时候,最好在caffe下手动安装opencv-devel和gflags-devel,方法如下:

  • 安装opencv-devel       //opencv先yum安装,不行的话再手动安装

$ sudo yum -y install cmake pkgconfig gtk2-devel python-devel numpy tbb-devel libpng-devel$ wget http://sourceforge.net/projects/opencvlibrary/files/opencv-unix/2.4.10/opencv-2.4.10.zip$ unzip opencv-2.4.10.zip$ cd opencv-2.4.10$ mkdir build$ cd build$ cmake ../ -DCMAKE_BUILD_TYPE=RELEASE -DCMAKE_INSTALL_PREFIX=/usr/local \-DBUILD_EXAMPLES=ON -DBUILD_NEW_PYTHON_SUPPORT=ON \-DINSTALL_PYTHON_EXAMPLES=ON$ make -j 2$ sudo make install


# glog
wget https://google-glog.googlecode.com/files/glog-0.3.3.tar.gztar zxvf glog-0.3.3.tar.gzcd glog-0.3.3
./configure
make && make install

# gflags
wget https://github.com/schuhschuh/gflags/archive/master.zip
unzip master.zip
cd gflags-master
mkdir build && cd build
export CXXFLAGS="-fPIC" && cmake .. && make VERBOSE=1
//上面一步特别重要,尤其是当出现找不到-fPIC的时候,执行这一句即可
make && make install

# lmdb
git clone https://github.com/LMDB/lmdbcd lmdb/libraries/liblmdb
make && make install


  1. glog

    wget https://google-glog.googlecode.com/files/glog-0.3.3.tar.gz 
    tar zxvf glog-0.3.3.tar.gz 
    cd glog-0.3.3 
    ./configure 
    make && make install

  2. lmdb

    git clone https://github.com/LMDB/lmdb 
    cd lmdb/libraries/liblmdb 
    make && make install

  3. protobuf重要

    安装步骤请参考 http://blog.csdn.net/tdmyl/article/details/31811317

  4. hdf5安装

    hdf5安装请查看官方文档 
    http://www.hdfgroup.org/HDF5/release/obtainsrc.html#src

  5. leveldb安装 

    leveldb下载请见https://github.com/google/leveldb 
    安装请见http://blog.sina.com.cn/s/blog_560e310001015jfx.html 
    缺失的步骤: 
    leveldb文件夹下依次执行 
    make 
    cd out-shared 
    cp lib* /usr/local/lib


切记,上述依赖需要安装到/usr/local下面的目录,否则编译时会提示找不到相关库文件。当然也可以配置到用户自定义的目录下面,不过没有尝试过。 前方高能!!接下来就是一些稍大型的安装动作了,步骤如下:


安装caffe:

一,下载Caffe源码

git clone https://github.com/bvlc/caffe.git
cd caffe/
mv Makefile.config.example Makefile.config

二,修改Makefile.config,大考CPU_ONLY选项,保存

1,#仅CPU模式开关,打开该选项(去掉#)表示Caffe仅支持CPU,不支持GPU

CPU_ONLY:=1

2,去掉BLAS_INCLUDE=/path/to/your/blas和BLAS_lIB=/path/to/your/blas的#,然后添加自己的路径
BLAS_INCLUDE:=/usr/include
BLAS_lIB:=/usr/lib64/atlas

三,vim Makefile

将LIBRARIES += cblas atlas 改为 LIRARIES +=satlas tatlas 


四,make -j8

然后等待编译成功,可能会遇到下列错误,如果出现错误一定要先看出现错误的地方,不要只看最后报错的地方,一定要看出错的原因是什么,从头读到尾,不要只看结果,我把自己遇到的错误整理如下:


错误一:gcc 编译出现 internal compiler error: Killed

internal compiler error: Killed (program cc1plus)

在 640M 内存的 vps 做编译的时候出现了上述错误.
几经搜索, 才发可能是系统没有交换分区, 编译过程中内存耗尽, 导致了编译中断 …
解决方式也很简单, 就是增加一个交换分区:

1. 创建分区文件, 大小 2G

dd if=/dev/zero of=/swapfile bs=1k count=2048000

2. 生成 swap 文件系统

mkswap /swapfile

3. 激活 swap 文件

swapon /swapfile

这样就木有问题了, 但是这样并不能在系统重启的时候自动挂载交换分区, 这样我们就需要修改 fstab.
修改 /etc/fstab 文件, 新增如下内容:

/swapfile  swap  swap    defaults 0 0

这样每次重启系统的时候就会自动加载 swap 文件了.


原文地址:https://xwsoul.com/posts/684


错误二:gcc版本需要4.8以上,支持C++11

C++11标准在2011年8月份获得一致通过,这是自1998年后C++语言第一次大修订,对C++语言进行了改进和扩充。随后各编译器厂商都各自实现或部分实现了C++中的特性。

  下面介绍在Linux系统下,升级GCC以支持C++11。目前来看GCC是对C++11支持程度最高最多的编译器,但需要GCC4.8及以上版本。

  原GCC版本:4.4.7;

  目标:升级GCC到4.8.2,以支持C++11。

  1. 获取GCC 4.8.2包:wget http://gcc.skazkaforyou.com/releases/gcc-4.8.2/gcc-4.8.2.tar.gz;
  1. 解压缩:tar -xf gcc-4.8.2.tar.gz;
  1. 进入到目录gcc-4.8.2,运行:./contrib/download_prerequisites。这个神奇的脚本文件会帮我们下载、配置、安装依赖库,可以节约我们大量的时间和精力。
  1. 建立输出目录并到目录里:mkdir gcc-build-4.8.2;cd gcc-build-4.8.2;
  1. ../configure --enable-checking=release --enable-languages=c,c++ --disable-multilib。--enable-languages表示你要让你的gcc支持那些语言,--disable-multilib不生成编译为其他平台可执行代码的交叉编译器。--disable-checking生成的编译器在编译过程中不做额外检查,也可以使用--enable-checking=xxx来增加一些检查;
  1. 编译:make;注意此步和上一步,比较耗时;
  1. 安装:make  install;
  1. 验证:gcc -v;或者g++ -v,如果显示的gcc版本仍是以前的版本,就需要重启系统;或者可以查看gcc的安装位置:which gcc;然后在查看版本 /usr/local/bin/gcc -v,通常gcc都安装在该处位置,如果显示为;
     

   

 

 

 

 

 

则表示已经升级成功。

错误三:make: *** [.build_release/tools/caffe.bin] Error 1

解决方法 存在上一次安装的残留文件。用 make clean 清除之前的安装,重新编译即可








原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 不小心点击拔打黑客lD视频怎么办 套得太深散户都不卖庄家怎么办 黑色衣领掉色在白衣服上怎么办 电脑缝纫界下线切的短怎么办 喝完酒第二天恶心想吐怎么办 纸上怎么办画5种标准眉 电脑密码忘了怎么办最简单的方法 宿舍六个人有一个不想安空调怎么办 绝地求生开在了进游戏的页面怎么办 桃树树根有很大一个洞怎么办啊 截掉的枝干一直往下干怎么办 大佛肚竹的叶子都黄了怎么办 大佛肚竹的枝和叶都掉了怎么办 网吧锁屏后但我的页面没关怎么办 不干了公司把我东西扔了怎么办 竹子种了3个月也不发芽是怎么办 盆栽橘子树夏季叶子全掉了怎么办 盆栽藕叶子全干了是怎么办 家里的盆栽竹根部长霉怎么办 浅色衣服被蓝彩笔染上色怎么办 pr导出视频后显示素材丢失怎么办 ps抠下来的图边缘发白怎么办 ps中抠出的图边缘虚不圆滑怎么办 ps的文字工具多了圆框怎么办 苹果6s屏幕锁忘了密码怎么办 网上下载的3d模型渲染很慢怎么办 cad下载完成后出现闪退怎么办 婴儿在肚子里被系带绑到怎么办 我想给外地的朋友送花怎么办 英雄联盟连接不上聊天服务器怎么办 用黄金换玫瑰金后悔了怎么办 劳力士日志系列玫瑰金和黄金怎么办 香菇代进地注水后长满绿毛怎么办 群主给你带了不满意的头衘怎么办 普兰德雪地靴洗变色了怎么办 书被水泡了皱了黏了怎么办 书被水泡了皱了没干怎么办 眼皮干燥起皮起皱怎么办能治好吗 手指头起小水泡指甲不平整怎么办 这几天我的内裤上带点血丝怎么办 一个月宝宝私处捂白了怎么办