Ubuntu 14.04 + caffe安装配置详细指南
                        Edit: Kevin (Q&A laichunren@qq)
            Reference: blog.csdn/shiorioxy/article/details/52652831
特别说明
    网上关于caffe的安装教程非常多,但是对于每一步是否操作成功,出现了什么样的错误又该如何处理却没有给出说明。因为大家的操作系统的环境千差万别,按照博客中的教程一步步的安装,最后很可能失败,有的教程甚至省略了一些细节部分,让小白更不知道如何判断每一步是否操作成功,如何处理出现的错误。
    作者花费了很长时间才成功地将caffe装完,期间遇到好多错误,多次重装操作系统。现在将经验写下来,一方面为了和大家分享讨论,另一方面是为了记录一下。
1. Caffe 地址:/
2. 本文使用2016年9月27日下载的caffe-master版本,运行平台为:Ubuntu 14.04,CUDA8.
0,cuDNN v5.1,Intel Parallel Studio XE Cluster 2015,OpenCV 3.1.0, Matlab 2014b. pycharm community,anaconda( python, numpy, scipy, matplotlib, et.al.)
版本说明:
1. Ubuntu 版本问题
Ubuntu 16.04是目前最新的系统,但装完cuda 8.0显卡驱动,重启系统后一直在登录界面循环而无法进入,原因是ubuntu16.04与cuda8.0不兼容。Ubuntu15.04在cuda上不再提供相关驱动文件(只有ubuntu16.04和ubuntu14.04的),因此还是选择ubuntu14.04这个版本的系统。
2. GCC 和 G++ 编译器版本问题
      Matlab 2014b--gcc/g++ 4.7.x,      Matlab 2016a--gcc/g++ 4.9.x
    Ubuntu 14.04--gcc/g++ 4.8.x,          Ubuntu 16.04--gcc/g++ 5.4.x
      Matlab支持的编译器版本需要和Ubuntu版本一致,否则编译matcaffe时会报错,但ubu
ntu14.04默认装的编译器版本比Matlab2014的高,因此要按照降级(或强制安装)的方法才可以正常使用,怀疑和显卡驱动有关。
3. 本文主要包含七个部分,包括:
-- 第一部分 Linux(ubuntu 14.04)的安装
-- 第二部分 gcc 4.7 和 g++ 4.7 的安装
-- 第三部分 nVidia CUDA+cudnn的安装(*.deb方法)
-- 第四部分 Matlab2014b 的安装
-- 第五部分 Pycharm的安装
-- 第六部分 Anaconda的安装
-- 第七部分 Caffe-Master的安装和测试
第一部分 Linux安装
1. 我的分区设置如下:
\ 根分区: 100G,
Swap交换分区:128G(等于内存大小) ,小于16G的内存,就设置成内存的1.5-2倍
boot分区:200M
Home分区:剩余的空间,多多益善
ubuntu安装教程2. 解决启动分区错误(可选)
装双系统需要先安装Windows 再安装Ubuntu。如果遇到启动分区表损坏,需要还原Windows分区:
$ sudo gedit etc/default/grub
设置:GRUB_DEFAULT = 2
$ sudo update-grub
第二部分 gcc4.7 和 g++ 4.7 的安装
1. 为什么要先安装GCC和G++,并需要降级呢?
Ubuntu14.04版本默认的GCC和G++都是4.8。而Matlab2014b默认支持的mex编译器是GCC4.7.x和G++4.7.x。因此需要额外安装GCC4.7和G++4.7并降级。
2. 为什么需要先安装编译器GCC和G++,而不是先安装显卡驱动和cuda等等呢?
首先,先安装显卡驱动,后安装GCC并降级的安装顺序过程中,遇到了很多问题。比如,在安装CUDA SAMPLES的过程中,遇到了问题/usr/bin/ld: cannot find –lGL,后面通过网上教程,重新连接该库文件,仍然不能通过OpenCV的编译。但是,先安装GCC,再安装显卡驱动,就不会遇到这个问题了。
3. 解决编译器gcc/g++版本问题。
A. 降级安装gcc/g++版本为4.7.x
$ sudo apt-get install -y gcc-4.7 g++-4.7
$ cd /usr/bin
$ sudo mv gcc gcc-4.9.2
$ sudo ln -s gcc-4.7 gcc
$ sudo mv g++ g++-4.9.2
$ sudo ln -s g++-4.7 g++
B. 暴力引用新版本GLIBCXX_3.4.20
$ sudo cp /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.20 /usr/local/MATLAB/R2014b/sys/os/glnxa64/libstdc++.so.6.0.20
$ cd /usr/local/MATLAB/R2014b/sys/os/glnxa64
$ sudo mv libstdc++.so.6 libstdc++.so.6.backup
$ sudo ln -s libstdc++.so.6.0.20 libstdc++.so.6
$ sudo ldconfig -v
通过命令“strings /usr/local/MATLAB/R2014b/sys/os/glnxa64/libstdc++.so.6 | grep GLIBCXX_” 可以看一下,是否成功包含了GLIBCXX_3.4.21,如果已经存在,基本上就成功了。
第三部分:nVidia CUDA Toolkit+cudnn的安装(*.deb方法)
1. 为什么需要安装NVIDIA显卡驱动,Ubuntu没有自带的显卡驱动吗?
Ubuntu自带的显卡驱动是开源的Nouveau,但是cuda不支持Nouveau。如果想使用cuda进行GPU计算,必须安装NVIDIA显卡驱动。
2. 选择哪个版本的显卡驱动呢
这个问题需要结合操作系统,操作系统影响显卡驱动的版本。比如cuda7.5需要显卡驱动最低版本是nvidia-352;cuda7.0需要显卡驱动最低版本是nvidia-336;cuda6.5需要显卡驱动最低版本是nvidia-33*;
3. 显卡驱动的安装方式有哪些
方法一:去NVIDIA下载相应的驱动二进制安装包,然后安装。
方法二:通过apt-get来安装。
区别:apt-get安装方便,但是不能安装最新的显卡驱动,目前ubuntu14.04通过apt-get可以安装nvidia-346显卡。
安装过程中注意事项:①需要关闭显示管理器,②二进制安装需要修改文件
4. 安装 CUDA Toolkit
官方下载地址:developer.nvidia/cuda-toolkit (.deb格式)
$ sudo dpkg -i cuda-repo-ubuntu1404-8-0-local_8.0.44-1_amd64.deb
$ sudo apt-get update
$ sudo apt-get install -y cuda
5. 安装 nVidia cuDNN library (cudnn-8.0-linux-x64-v5.1)
官方下载地址:developer.nvidia/cudnn
$ tar zxvf cudnn-7.
$ cd cuda
$ sudo cp include/cudnn.h /usr/local/include
$ sudo cp lib64/libcudnn.* /usr/local/lib