话说CentOS装caffe也真心是个坑,装了两天,python因为应用中不用,谢天谢地,这里说下安装过程,不过,不同机器可能遇到的问题不一样。这里参考了一些博客:http://my.oschina.net/speedinghzl/blog/464142?fromerr=PMKemZsc 幸亏opencv按照这个上面的装的,不然不知道又有多少坑,还有http://caffe.berkeleyvision.org/install_yum.html官网的文档,依赖库尽量按着这个来。下面说一下完整过程
1. 首先,我是在虚拟机上安装的,虚拟机的安装过程这里不说了。安装完centos6.5后,要看看你的网络配置,这里可以参考:
http://jingyan.baidu.com/article/d5c4b52bc73700da560dc535.html
ifconfig -a vi /etc/sysconfig/network-scripts/ifcfg-eth0
配置动态IP。
通过修改ifcfg-eth0内容配置IP地址;按键盘字母【a】进入其VI编辑模式。
◆将ONBOOT=no改为ONBOOT=yes 激活网卡。
◆将NM_CONTROLLED=yes改为NM_CONTROLLED=no。
修改完成后按【Esc】键退出编辑模式,输入":wq"敲回车保存修改结果。
重启网络服务,查看动态IP配置结果。
输入命令:service network restart (重启网络服务)
输入命令:ifconfig -a (查看网络配置)
我只做到这一步。
2. 安装wget
sudo yum -y install wget
3. 修改yum源,我这里用的是163的源
cd /etc/yum.repos.d/ wget http://mirrors.163.com/.help/CentOS6-Base-163.repo mv CentOS-Base.repo CentOS-Base.repo.bak mv CentOS6-Base-163.repo CentOS-Base.repo
yum makecache yum update
4. 基本库安装:
sudo rpm -Uvh http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm这个可以参考:
一些依赖库:
sudo yum install protobuf-devel leveldb-devel snappy-devel opencv-devel boost-devel hdf5-devel这里,boost 和opencv版本太低需要手动安装
5. boost安装
wget http://www.mirrorservice.org/sites/dl.sourceforge.net/pub/sourceforge/b/bo/boost/boost/1.55.0/boost_1_55_0.tar.bz2
源博客中的链接地址一直出错,所以在网上找了上面的地址 $ tar jxvf boost_1_55_0.tar.bz2 $ cd boost_1_55_0 $ ./bootstrap.sh $ ./b2 $ sudo ./b2 install
6 opencv安装
$ 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 $ sudo make install
7 其他依赖
sudo yum install gflags-devel glog-devel lmdb-devel这里面,估计只有lmdb不需要手动装
其他都要重装一遍
一个个来
glog
wget https://github.com/google/glog/archive/master.zip $ unzip master.zip $ cd glog-master $ ./configure $ make $ sudo make install
gflags
因为我在编译过程中发现直接安装的gflags报错了, 出现https://github.com/BVLC/caffe/issues/3870 类似的问题,但是上面提出的办法会有其他问题,因此手动下了一个,重新装了一下。
wget https://github.com/schuhschuh/gflags/archive/master.zip unzip master.zip cd gflags-master mkdir build && cd build cmake .. && make VERBOSE=1 make && make install
还要安装 blas
sudo yum install atlas-devel
这里需要注意的是,在caffe的Makefile.config中需要加入altas的路径,因为我在这里遇到了路径找不到的错误,配置之后就没有了:
8 编译caffe,
caffe可以直接用git下载
make all
make test
在make test过程中,遇到类似
http://superuser.com/questions/171836/what-am-i-doing-wrong-when-a-linux-app-doesnt-find-an-so-file
的问题,最后添加了变量LD_LIBRARY_PATH = /usr/local/lib解决
make runtest
wget https://github.com/google/protobuf/releases/download/v2.6.0/protobuf-2.6.0.zip ./configure --prefix=/usr/local/protobuf make make check make install添加路径:
export PATH=$PATH:/usr/local/protobuf/bin export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/protobuf/lib
参考资料:
http://my.oschina.net/speedinghzl/blog/464142?fromerr=PMKemZsc
http://caffe.berkeleyvision.org/install_yum.html
https://github.com/google/protobuf/issues/51