NVIDIA CUDA 4.0 在 2011 年 4 月释出,一样有各种平台的版本,除了 Windows XP, Windows VISTA、Windows 7 与 Mac OS 外,Linux 的部份也支持好几种版本:
- Fedora 13
- RedHat Enterprise Linux 4.8
- RedHat Enterprise Linux 5.5
- RedHat Enterprise Linux 6.0
- Ubuntu Linux 10.10
- OpenSUSE 11.2
- SUSE Linux Enterprise Server 11 SP1
这里介绍如何在 Ubuntu 11.04 中安装 CUDA 4.0 RC2,目前 NVIDIA 官方网站上明确支持的 Ubuntu 版本只有到 Ubuntu 10.10,但经过一些小修改,也可以装在 Ubuntu 11.04 的系统上。
安好后截图预览:
图1
图2
下载与安装 CUDA 4.0首先从 NVIDIA 网站下载 CUDA Toolkit for Ubuntu Linux 10.10、CUDA Tools SDK 与 GPU Computing SDK code samples。
下载完成后先安装 CUDA Toolkit for Ubuntu Linux 10.10:
chmod +x cudatoolkit_4.0.13_linux_64_ubuntu10.10.run
sudo ./cudatoolkit_4.0.13_linux_64_ubuntu10.10.run
预设是安装在 /usr/local/cuda 目录下,建议就依照他的预设路径安装,安装完成后要设定 Library 的 Path,有两个方式,一种是更改 LD_LIBRARY_PATH 环境变数,但我习惯直接加在 /etc/ld.so.conf.d/ 里面:
sudo echo “/usr/local/cuda/lib64” > /etc/ld.so.conf.d/cuda-40.conf
sudo echo “/usr/local/cuda/lib” >> /etc/ld.so.conf.d/cuda-40.conf
sudo ldconfig
再设定 PATH:
echo ‘export PATH=$PATH:/usr/local/cuda/bin’ >> ~/.bashrc
安装 CUDA Tools SDK:
chmod +x cudatools_4.0.13_linux_64.run
sudo ./cudatools_4.0.13_linux_64.run
预设是安装在 /usr/local/cuda/CUDAToolsSDK 目录下。
安装 GPU Computing SDK code samples:
chmod +x gpucomputingsdk_4.0.13_linux.run
./gpucomputingsdk_4.0.13_linux.run
预设是安装在自己帐号的 ~/NVIDIA_GPU_Computing_SDK 目录下,安装时要设置 CUDA 安装的路径:
Enter CUDA install path (default /usr/local/cuda):若 CUDA 都是依照预设路径安装,则这里就不需要更动。设定 GCC 编译器
CUDA 4.0 RC2 目前只支持到 gcc 4.4,若是只有装 gcc 4.5 的话,还要再装一下 gcc 4.4 才能编译:
sudo apt-get install gcc-4.4
接着要让编译时能够使用 gcc 4.4,一种方式是将系统的 /usr/bin/gcc 改连到 /usr/bin/gcc-4.4,/usr/bin/g++ 也一样改连到 /usr/bin/g++-4.4,或是使用 update-alternative:
sudo update-alternatives –install /usr/bin/gcc gcc /usr/bin/gcc-4.5 150
sudo update-alternatives –install /usr/bin/gcc gcc /usr/bin/gcc-4.4 100
sudo update-alternatives –install /usr/bin/g++ g++ /usr/bin/g++-4.5 150
sudo update-alternatives –install /usr/bin/g++ g++ /usr/bin/g++-4.4 100
接着使用 update-alternatives 选择 4.4 版的 gcc:
sudo update-alternatives –config gcc
执行后选择 gcc-4.4,再接着选择 4.4 版的 g++:
sudo update-alternatives –config g++
执行后选择 g++-4.4
若不想修改整个系统的设定,有另一个办法可以处理,自己建一个 ~/bin 目录,然后建立 gcc-4.4 与 g++-4.4 的连结,再将这个路径加入自己的 PATH 中,这样就不会影响其他的程式:
mkdir ~/bin
ln -s /usr/bin/gcc-4.4 ~/bin/gcc
ln -s /usr/bin/g++-4.4 ~/bin/g++
然后在每次要编译 CUDA 程式前执行:
export PATH=~/bin:$PATH
这样就不需要更动到系统其他程式的设定了。
编译 GPU Computing SDK code samples
接下来要编译 GPU Computing SDK code samples:
cd ~/NVIDIA_GPU_Computing_SDK
make
若是幸运的话,这样就大公告成了,但通常都会有些问题,像编译时若是出现类似这样的问题:
/usr/bin/ld: cannot find -lXi是表示有一些必要的 Library 没装,用 apt-cache 找一下再用 apt-get 装起来就可以了:
/usr/bin/ld: cannot find -lXmu
/usr/bin/ld: cannot find -lglut
collect2: ld returned 1 exit status
apt-get install libxi-dev libxmu-dev libglut3-dev
若出现
/usr/bin/ld: cannot find -lcuda或
collect2: ld returned 1 exit status
/usr/bin/ld: cannot find -lGL是表示找不到 NVIDIA GL 或 CUDA Library,若是您是使用 Ubuntu 内建的驱动程式管理介面安装的 NVIDIA Driver,则将 /usr/lib/nvidia-current 下面的 so 档件一个连结到 /usr/lib 下面即可:
collect2: ld returned 1 exit status
sudo ln -s /usr/lib/nvidia-current/libcuda.so /usr/lib/libcuda.so
sudo ln -s /usr/lib/nvidia-current/libGL.so /usr/lib/libGL.so
总之出了错都会有些错误讯息,仔细看看错误讯息大概都可以解决的。