This guide is based upon Ubuntu LTS 12.04, but same principles apply in 12.10 as well. Let’s start
1. Make sure you have a CUDA supported GPU
You must have a nVIDIA GPU that supports CUDA, otherwise you can’t program in CUDA code. Here’s a list with the CUDA supported GPU models.
2. Install NVIDIA Proprietary drivers
Either use our nVIDIA installer script or use Jockey (Additional Drivers) or just pick the driver you want from the NVIDIA official website.
3. Download CUDA Toolkit 5.0 for Ubuntu
I used the Ubuntu 11.10 32bit version (it’s the latest version so far). So please dowload.
4. Fix the libglut.so error
There will be an error when you’ll try to install the CUDA 5.0 examples. The driver is trying to find the libglut.so file and it doesn’t look for other versions, such as so.1, so.2 etc.
First confirm that you have a libglut file
sudo find /usr -name libglut*
if does so, symlink that file to libglut.so
sudo ln -s /usr/lib/x86_64-linux-gnu/libglut.so.3 /usr/lib/libglut.so
sudo ln -s /usr/lib/i386-linux-gnu/libglut.so.3 /usr/lib/libglut.so
5. Install the CUDA Toolkit and Samples
Press CTRL+ALT+F1 to open a shell — yeah, we’re going to do this in old CLI way, but there’s no need to afraid the black and white terminal. After all you know what they say, one you go black…
5.1 Shutdown the all the graphics
Ubuntu uses lightdm, so you need to stop this service.
sudo service lightdm stop
5.2 Run the installer
Go to (cd) to the directory you have the CUDA installer (a file with *.run extension) and type the following:
sudo chmod +x *.run
Accept the Licence and Install only the CUDA 5 Toolkit and the Samples. DO NOT INSTALL the drivers because we have already done that.
6. Enable the nvcc compiler
In order to compile CUDA code you have to use the nvcc compile. In that so you have to tweak some enviroment variables into your home bashrc file.
32 bit systems –
64 bit systems –
If you want to compile a CUDA file (*.cu extension) you can use the following command:
nvcc -o file file.cu
or use the NSight Eclipse Edition.
Great how-to guys.