由于实验需要,于2016年10月15日再Ubuntu11.04安装cuda5.0,但是从网上查找Ubuntu11.04 只有对应的支持的cuda4 版本,cuda 5.0前面版本不支持IDE nisght ,为调试带来许多麻烦,等装完以后,才明白,为什么英伟达不支持Ubuntu11.04的cuda 5.0,原因是gcc 编译器的版本不对应,Ubuntu11.04默认的编译器是gcc4.5,但是cuda5.0对应的编译器必须是gcc4.6,这个后面还需要调整,首先在Nvidia官方网站上下载cuda5.0安装文件并且最好放在英文目录下,下载页面如下:https://developer.nvidia.com/cuda-downloads这里下载Ubuntu 11.10的包即可,下载时注意操作系统位宽的选择,本人的为32位系统,故选择Ubuntu 11.10 32bit版本。这里下载的包为完整的安装包,包括显卡驱动,工具链和Samples。要使用CUDA最好安装最新版本的驱动,具体软硬件环境能不能符合cuda的安装要求可以参考NVIDIA CUDA Getting Started Guide for Linux,这里重点提一下驱动版本,在NVIDIA CUDA Toolkit v5.0 Release Notes中,可以看到:
The CUDA 5.0 toolkit and samples require the associated CUDA driver version to be at least 304.54 on Linux and at least 306.94 on Windows.
如果之前安装的linux驱动低于304.54的话那还是再安装一遍吧,至少cuda5.0的完整安装包可以确保cuda工作正常。本人是安装完系统之后直接安装的显卡驱动,因此不许要移除原来的驱动,如果之前已经安装了Ubuntu提供的Nvidia附加驱动的话最好先移除驱动,本人上一次就是在没有移除驱动的情况下安装了cuda5.0的包结果出了不少问题。
        在终端中执行如下命令:

$ sudo apt-get –purge remove nvidia-glx nvidia-glx-new
$ sudo apt-get –purge remove nvidia-settings nvidia-kernel-common

原有驱动删除之后最好重启一下,如果出现开机登录的时候出现花屏的话就说明原有驱动已经卸载完毕了,网上有的网友还说需要将Ubuntu集成的Nvidia驱动加入黑名单防止冲突,如果之前没有安装过ubuntu的附加驱动,是可以的,否则的话必须将Ubuntu集成的驱动加入黑名单,具体的做法是修改/etc/modprobe.d/blacklist.conf文件(此处仅仅此操作不够,需要查看  上一篇安装cuda4.3教程):

sudo gedit /etc/modprobe.d/blacklist.conf

在最后加入如下两行并重启:
blacklist nouveau
options nouveau modeset=0
重启之后我们还需要完成其它事情,在安装cuda samples的时候需要一个贡献库文件libglut.so,默认没有安装,在终端下输入(对于此处ubuntu需要更新源才可以安装,同时需要ubuntu12.04的源才可以):

$ sudo apt-get install freeglut3

这个共享库对于32位的Ubuntu被安装在/usr/lib/i386-linux-gnu/libglut.so.3,而对于64位的Ubuntu被安装在 /usr/lib/x86_64-linux-gnu/libglut.so.3,但cuda默认会去寻找/usr/lib/libglut.so,因此我们还需要加一个软链接。
对于32位系统,在终端下输入:

$ sudo ln -s /usr/lib/i386-linux-gnu/libglut.so.3 /usr/lib/libglut.so

对于64位系统,在终端下输入:

sudo ln -s /usr/lib/x86_64-linux-gnu/libglut.so.3 /usr/lib/libglut.so

接下来按Ctrl + Alt + F1进入tty命令行终端,登录之后首先将Ubuntu的X Server关闭,对于Red Hat/Centos来说直接执行sudo stopx即可,而Ubuntu12.04下需要采用lightdm作为它的X Server(注意:早期版本的Ubuntu使用gdm作为它的X Server,这是12.04关闭X Server与早期版本的区别之一。另外在KUbuntu12.04下的窗口管理器是kdm而不是lightdm),所以我们需要在终端下执行:

sudo service lightdm stop

成功后切换到cuda安装的目录,默认cuda不可执行,所以首先给cuda赋予可执行的权限:

$ chmod +x cuda_5.0.35_linux_32_ubuntu11.10-1.run

然后我们使用root权限进行安装:

$ sudo ./cuda_5.0.35_linux_32_ubuntu11.10-1.run(安装以前不用更新gcc,此处gcc4.5才能安装成功)

首次安装可能会提示需要重启,重启之后再根据上面的步骤安装即可。首先会提示安装nvidia显卡驱动,然后安装Toolkit,最后安装Samples,一路yes并且按照默认的路径(回车即可)安装。安装的log文件放在/tmp目录下,如果安装过程中遇到什么问题的话,根据问题可以网上找相应的解决方法,不过本人除了第一次遇到缺少libglut.so文件之外,没有遇到过其它问题。安装完成后会提示需要设置环境变量和共享库路径:
* Please make sure your PATH includes /usr/local/cuda-5.0/bin
* Please make sure your LD_LIBRARY_PATH
*   for 32-bit Linux distributions includes /usr/local/cuda-5.0/lib
*   for 64-bit Linux distributions includes /usr/local/cuda-5.0/lib64:/lib
* OR
*   for 32-bit Linux distributions add /usr/local/cuda-5.0/lib
*   for 64-bit Linux distributions add /usr/local/cuda-5.0/lib64 and /lib
* to /etc/ld.so.conf and run ldconfig as root

* To uninstall CUDA, remove the CUDA files in /usr/local/cuda-5.0
* Installation Complete

Please see CUDA_Getting_Started_Guide_For_Linux.pdf in /usr/local/cuda-5.0/doc/pdf for detailed information on setting up CUDA.

Logfile is /tmp/cuda_install_1939.log
        安装完成之后,我们需要先切换回到图形界面验证显卡是否安装成功,输入:

$ sudo service lightdm start

如果驱动安装成功的话就能切回登录界面,并且会出现NVIDIA大大的LOGO(这点实在有点恶心),如果想去掉在登录屏幕出现之前的NVIDIA LOGO,需要在Xorg配置文件中做些手动修改。

sudo gedit /etc/X11/xorg.conf

在Device部分找到Driver "nvidia"这一行,在这一行后面,加上: Option        "NoLogo"保存后推出即可。但是本人新装的驱动居然找不到xorg.conf,后来查了一下新版的好像都是默认不带xorg的,不过我们可以使用命令生成xorg.conf:

$ sudo nvidia-xconfig

接下来验证是否安装成功,在终端下输入:

$ nvidia-settings

出现如下界面:

可以看到NVIDIA Driver Version: 304.54,查看显卡是否装好运行,输入:

$ glxinfo | grep rendering

如果出现direct rendering: Yes 则表明显卡正在运行。
另外如果之前没有安装过glxinfo命令的话需要安装开发包mesa-utils:

$ sudo apt-get install mesa-utils

接下来的工作是配置cuda toolkit的环境变量,终端下输入(环境变量也参考cuda4.3安装教程):

$ sudo gedit /etc/profile

在最后加入:export PATH=/usr/local/cuda-5.0/bin:$PATH
保存后退出,再source一下,使得修改后的环境变量立即生效,在终端中输入:

$ source /etc/profile

不过此方法仅限于该终端,没有全局效果,重启后即可使能全局效果。下面再加入共享库的路径:
        1. 对于Red Hat/Centos下可以直接在/etc/profile中添加路径:
        对于32位的系统:export LD_LIBRARY_PATH=/usr/local/cuda-5.0/lib:$LD_LIBRARY_PATH
        对于64位的系统:export LD_LIBRARY_PATH=/usr/local/cuda-5.0/lib64:/lib:$LD_LIBRARY_PATH
        2. 对于Ubuntu 8.10以后的版本,export LD_LIBRARY_PATH在/etc/profile中不再适用,需要修改在/etc/ld.so.conf添加共享库的路径,一行一条,具体可以参考:http://blog.163.com/thinki_cao/blog/static/83944875201302713822395/
        对于32位的系统添加:/usr/local/cuda-5.0/lib
        对于64位的系统添加:(一行一条)
        /usr/local/cuda-5.0/lib64
        /lib
        添加完之后还需要使得修改的路径生效,此法无须重启:

$ sudo ldconfig

再执行一下命令,验证路径是否添加成功

$ ldconfig -v|grep cuda

会出现相关的路径:
/usr/local/cuda-5.0/lib:
    libcudart.so.5.0 -> libcudart.so.5.0.35
    libicudata.so.48 -> libicudata.so.48.1.1
    libcuda.so.1 -> libcuda.so.304.54

 
此处需要安装gcc4.6,g++4.6,因为cuda5.0只支持4.6版本,升级上文Ubuntu12.04的源,就可以升级,具体的升级方法,只要apt-get install 安装,在usr/bin里面更改链接gcc (g++)的链接就可以。
至此cuda toolkit环境配置完成,接下来为了编译cuda5.0 samples(也就是以前的GPU Computing SDK)需要安装一些开发包,终端下输入:

sudo apt-get install g++ openmpi-bin openmpi-doc libopenmpi-dev freeglut3-dev libxi-dev libxmu-dev

默认Samples是安装在用户主目录下的,下面开始编译:

$ cd ~/NVIDIA_CUDA-5.0_Samples/

$ make -j4

这里其中多线程编译,对于双核以及更多核数的cpu能够明显减少编译时间,编译samples还是比较耗时间的。编译完成之后执行:

$ cd NVIDIA_CUDA-5.0_Samples/bin/linux/release/

$ ./deviceQuery

如果一切顺利的话会出现类似于下面的这些信息:

Ubuntu 11.04 安装 cuda5.0的更多相关文章

  1. ubuntu 11.04安装笔记

    首先,本文查询了网络中各位大大的经验共享,特别是<UltraISO制作U盘启动Ubuntu 8.10 LiveCD>,地址在http://blog.sina.com.cn/s/blog_5 ...

  2. Ubuntu 16.04安装Vim8.0

    Ubuntu 16.04安装Vim8.0 https://www.aliyun.com/jiaocheng/131859.html sudo add-apt-repository ppa:jonath ...

  3. Ubuntu 11.04安装arm-linux-gcc-4.4.3/arm-none-linux-gnueabi-gcc安装包

    准备工具和系统 arm-linux-gcc-4.4.3.tar.gz arm-linux-gcc-4.4.3下载地址: 下载在Linux公社的1号FTP服务器里,下载地址: FTP地址:ftp://w ...

  4. ubuntu 14.04安装zabbix3.0以及汉化

    文章出处借鉴于 http://www.cnblogs.com/-10086/p/5317524.html 1.下载deb # wget http://repo.zabbix.com/zabbix/3. ...

  5. Ubuntu 11.04安装GCC 4.6.1

    首先下载相应的源代码:ftp://ftp.dti.ad.jp/pub/lang/gcc/releases/gcc-4.6.1/#下载 gcc-4.6.1.tar.bz2 ftp://ftp.dti.a ...

  6. Ubuntu 11.04 安装后要做的20件事情

    转自:http://www.cnbeta.com/articles/141137.htm #1 不喜欢Unity? 切换到Ubuntu gnome 经典桌面 注销unity桌面环境,然后选择登录环境为 ...

  7. ubuntu 14.04 安装redis5.0.3

    redis下载地址:http://download.redis.io/releases/ 新建Redis目录,下载Redis 安装包: mkdir rediscd rediswget http://d ...

  8. 安装qt5.3.2后,qtcreator在ubuntu 11.04无法启动的问题

    在官方网站下载.run文件安装后,qtcreator启动失败,然后找到命令行启动,失败原因如下: shr@shr-Sieyuan:~/Qt5.3.2/Tools/QtCreator/bin$ ./qt ...

  9. ubuntu 10.04 安装qt 5.0.2

    转自ubuntu 10.04 安装qt 5.0.2 从qt project网站下载下来最新的qt5.0.2套件,发现是个.run文件,添加x属性,然后直接sudo ./****.run, 提示  /l ...

随机推荐

  1. Redis多个数据库

    注意:Redis支持多个数据库,并且每个数据库的数据是隔离的不能共享,并且基于单机才有,如果是集群就没有数据库的概念. Redis是一个字典结构的存储服务器,而实际上一个Redis实例提供了多个用来存 ...

  2. HTML DOM nodeType 属性

    实例 获得 body 元素的节点类型: document.body.nodeType; 结果: 1 定义和用法 nodeType 属性返回以数字值返回指定节点的节点类型. 如果节点是元素节点,则 no ...

  3. Jasper:推送 API

    ylbtech-Jasper:推送 API Control Center 还维护一个“推送 API”系统,一旦发生特定事件,就会向应用程序发送编程通知.例如,您可能选择在设备接近流量上限时收到通知.或 ...

  4. C# 把datagridview控件上的表格输出到excel文件

    using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...

  5. js操作Iframe非当前最上层窗体

    如果当前窗口不是最上层窗口(比如是在Iframe中),那么就把自己变为最上层窗口.  <script language="javascript" type="tex ...

  6. Umbraco back office 登录不了,如何解决

    通过设置User的默认密码为"default", 它的Hash值为 bnWxWyFdCueCcKrqniYK9iAS+7E= 所以在SQL Server中执行以下脚本 UPDATE ...

  7. WCF大文件传输【转】

    http://www.cnblogs.com/happygx/archive/2013/10/29/3393973.html WCF大文件传输 WCF传输文件的时候可以设置每次文件的传输大小,如果是小 ...

  8. 利用C++创建DLL并C#调用

    日期:2018年11月26日 环境:window 10,VS2015 community 一.利用C++创建DLL 1.新建项目: 2.打开CreateDLL.cpp文件,并输入测试代码 #inclu ...

  9. 转换为标准IPv4格式

    Insus.NET刚写了一个函数,把一个IP地址转换为标准格式,即每段位均是由3个数字组成. SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- = ...

  10. luogu 1169 棋盘制作(单调栈/悬线)

    luogu 1169 棋盘制作(单调栈/悬线) 国际象棋是世界上最古老的博弈游戏之一,和中国的围棋.象棋以及日本的将棋同享盛名.据说国际象棋起源于易经的思想,棋盘是一个8*8大小的黑白相间的方阵,对应 ...