Linux

The ARM cross compiler program can be downloaded from this link or using the following command in a terminal:

wget -c http://www.codesourcery.com/sgpp/lite/arm/portal/package4571/public/arm-none-linux-gnueabi/arm-2009q1-203-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2

Create a directory that will contain the program:
mkdir CodeSourcery

Uncompress the compiler installation file using:
tar -jxvf ~/arm-2009q1-203-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2 -C ~/CodeSourcery/

Add the compiler path using:
echo export PATH=$PATH:~/CodeSourcery/arm-2009q1/bin/ >> ~/.bashrc && . ~/.bashrc

Verify that the cross-compiler is properly installed using:
arm-none-linux-gnueabi-g++ -v

This should show a long message:
Using built-in specs.
Target: arm-none-linux-gnueabi
Configured with: /scratch/mitchell/....
...
Thread model: posix
gcc version 4.3.3 (Sourcery G++ Lite 2009q1-203)

I have found some cases where the system reports an error message similar to this:
bash: XXXXX/CodeSourcery/arm-2009q1/bin/arm-none-linux-gnueabi-c++: No such file or directory

This is caused because the compiler is a 32-bit application and requires 32-bi libraries to run. The issues is resolved by installing the missing libraries using:
sudo apt-get install gcc-multilib