首页 技术 正文
技术 2022年11月12日
0 收藏 608 点赞 2,527 浏览 4595 个字

这个也是困扰我很久的问题,之前用 http://www.cnblogs.com/platero/p/3993877.html 的安装方法,装了五六七八九十次,总是出问题。

后来找到了一种新的方法,一个晚上加半个上午,装了ubuntu系统(14.04) + NVIDIA 驱动 + CUDA + CAFFE 全部搞定。还跑了mnist的那个数据库,爽爽的一点问题也没有。具体步骤:

1.安装ubuntu,建议安装英文语言版(我自己安装的是14.04英文语言的)。

2.安装NVIDIA 驱动:建议参考博客 http://blog.csdn.net/xizero00/article/details/43227019 (这是我同学的博客,我用他的方法装,好到爆炸)。

建议先安装依赖项: $ sudo apt-get install build-essential

1) 首先验证你是否有nvidia的显卡(http://developer.nvidia.com/cuda-gpus这个网站查看你是否有支持gpu的显卡): $ lspci | grep -i nvidia

2) 查看你的linux发行版本(主要是看是64位还是32位的):$ uname -m && cat /etc/*release

3) 查看GCC版本: $ gcc –version

4) 首先下载nvidia cuda的仓库安装包(我的是ubuntu 14.04 64位,所以下载的是ubuntu14.04的安装包,如果你是32位的可以参看具体的地址,具体的地址是https://developer.nvidia.com/cuda-downloads)

$: wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/cuda-repo-ubuntu1404_6***.deb (具体看网址多少)

5) 下载完成之后可以使用如下命令安装它,注意文件名修改为cuda-repo-ubuntu1404_6.5-14_amd64.deb, (建议下载local版(接近2G)的,在windows下用迅雷下载,拷贝到ubuntu桌面。net(几k)和local版本安装步骤一模一样,如下:)

$ sudo stop lightdm

$ sudo dpkg -i cuda-repo-<distro>_<version>_<architecture>.deb

$ sudo start lightdm

6) 安装好仓库之后,就可以更新你的本地仓库。

$ sudo apt-get update

7) 最后开始安装cuda以及显卡驱动(安装cuda的同时就会把显卡驱动也全部安装好,这个真的很方便。但是下载的时间有点长。)

sudo apt-get install cuda

**建议安装xubuntu, 防止桌面空白现象 $ sudo apt-get install xubuntu-desktop

需要注意的是,我这里提供的安装方法跟网络上各种安装方法都不一样,他们的方法往往很复杂

主要是因为:(1)有些教程是手工安装显卡的驱动程序,手工屏蔽系统的默认开源的驱动

(2)安装cuda也是手工进行

使用这个方法的时候千万要注意几个问题:

(1)cuda6.5已经不支持老旧的显卡了所以sm11 等等都必须删除。可以参考我的另一个文章,关于编译opencv3.0的

(2)ubuntu14.04是64位的,并且不要一开始就更新系统补丁什么的,因为系统更新过之后,再安装显卡驱动就会无法进入图形界面,我查看了相关的日志发现是卡在了dbus那边。所以,我建议一安装好ubuntu 14.04就不要更新系统补丁。

8) 安装完之后你需要设置环境变量, 在/etc/profile里面加入

export PATH=/usr/local/cuda-6.5/bin:$PATH

export LD_LIBRARY_PATH=/usr/local/cuda-6.5/lib64:$LD_LIBRARY_PATH

然后在终端输入$   source /etc/profile

9) 添加lib库路径:

在 /etc/ld.so.conf.d/加入文件 cuda.conf, 内容如下

 /usr/local/cuda-6.5/lib64

执行下列命令使之立刻生效

 sudo ldconfig

我同学博客说接下来选择是否安装nvidia的sample,我感觉前一个步骤已经一起安装的,至少我安装的时候是这样的,所以这一步是不需要的,没有的话另行安装。

接下来做一些验证工作:

1. 查看显卡的驱动版本

$ cat /proc/driver/nvidia/version

2. 查看nvcc编译器的版本

$ nvcc -V i

3. 编译cuda的示例代码: $ cd ~/NVIDIA_CUDA-6.5_Samples, $ sudo make

4. 全部编译完成后, 进入 samples/bin/x86_64/linux/release, sudo下运行deviceQuery,$ sudo ./deviceQuery

安装其他工具和库

1. 安装ATLAS(由于intel mkl收费,openblas安装复杂,atlas最好安装了,而且是caffe默认的), 一行代码搞定:$ sudo apt-get install libatlas-base-dev

2. 安装Opencv 2.4.9: 这个尽量不要手动安装, Github上有人已经写好了完整的安装脚本:https://github.com/jayrambhia/Install-OpenCV 下载该脚本,进入Ubuntu/2.4 目录, 给所有shell脚本加上可执行权限。

1) $ chmod +x *.sh,  $ sudo ./opencv2_4_9.sh. 接下来等着自动安装。

我个人人文安装opencv最好的办法是,在ubuntu软件中心输入opencv,然后把所有显示的项都点击安装(没有软件中心可以$sudo apt-get install software-center安装一个,该方法也可验证opencv是否装好)。

另外,用该方法的时候会出现错误/home/yy/opencv-2.4.9/build/modules/core/CMakeFiles/cuda_compile.dir/__/dynamicuda/src/cuda//cuda_compile_generated_matrix_operations.cu.o等一堆错误。

该错误在终端输入:“cmake -D CMAKE_BUILD_TYPE=bulid -D CMAKE_INSTALL_PREFIX=/usr/local -D CUDA_GENERATION=Kepler ..”,即可解决!

如出现../modules/gpu/src/nvidia/core/NCVPixelOperations.hpp(51): error: a storage class is not allowed错误,解决办法在此:

去网站http://code.opencv.org/issues/3814  下载 NCVPixelOperations.hpp 替换掉opencv2.4.9该路径下的文件, 重新编译。 在CSDN下载,以前的下载路径好像下载不了。

最后,sudo make install 即可,可以python 试一下能否import 从从cv2。

3.  安装其他依赖项: $  sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libboost-all-dev libhdf5-serial-dev libgflags-dev libgoogle-glog-dev liblmdb-dev protobuf-compiler (建议一个一个安装)

4. 安装Python:下载CAFFE,转到caffe目录下的Python目录:$ sudo apt-get install python-dev python-pip, $ for req in $(cat requirements.txt); do sudo pip install $req; done

安装完python后在/etc/profile里面加上路径,export PYTHONPATH = …caffe_root/python/:$python:$PYTHONPATH

(后面在运行python文件的时候,会用到protobuf,安装完probobuf也要在/etc/profile/中加入路径/usr/include/google/protobuf:$PATH)

现在已经大功告成了:测试即可

1) cd 进入caffe根目录, 首先复制一份Makefile.config

2) $ cp Makefile.config.example Makefile.config

3) $ make all -j8

$ make test

$ make runtest

最后可以,安装MATLAB…(此处省略一万字…)

5. 如果想用python接口,可接着如下操作。

1) Makefile.config修改: WITH_PYTHON_LAYER := 1 #取消注释

2) 编译:

    $ make clean

    $ make pycaffe -j32

    $ make test -j32

 3) 使Caffe的python接口永久生效

    $ vim /etc/profile profile 最后添加: export PYTHONPATH=/root/$CAFFE_ROOT/python:$PYTHONPATH

    $ source /etc/profile

注意:

有一些python库没有安装,在import caffe测试时会出错,常见的库缺失错误:

ImportError: No module named skimage.io

ImportError:  No module named scipy

ImportError:  No module named google.protobuf.internal

yum install python-matplotlib.x86_64
pip install -U scikit-image
pip install scipy
easy_install protobuf

安装完成上述caffe依赖的python库后,可能需要重新执行一遍第4,5步操作。

6. 如果想使用MATLAB接口,在Makefile.config中修改文件,写入以下路径:

MATLAB_DIR:=/usr/local/MATLAB/R2014a

然后终端下编译:$ sudo make matcaffe

然后测试:$ sudo make mattest

如果在make mattest 出现以下错误:/usr/../libstdc++.so.6: version `GLIBCXX_3.4.11′ not found (required by …) 可采用以下解决方案:

sudo ln -sf /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.21 /usr/local/MATLAB/R2014a/bin/glnxa64/libstdc++.so.6

成功没有报错即可。

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:8,996
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,510
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,353
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,137
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,770
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,848