A compiler for ARM CPUs is a bit a mixed bag. Partially, because ARMs cover a very wide range of environments, from 8-pin primitive MCUs running 'What is 'Bare Metal'?' applications to full fledged PCs with operating systems.
Another point of confusion is the multitude of toolchains and IDEs available. For example, there are at least four compiler flavours based on gcc, all doing the basically same thing, but in subtly different ways (like requiring different flags).
This page covers compilers and toolchains usable for RepRap controllers which run 'bare metal' binaries.
Compilation Environments
Each should work to compile Compilation Environments for ARM-based controllers. Please stick to one, mixing them can be confusing.
GNU ARM Embedded Toolchain
This the toolchain supported by ARM, the company, so it can be seen as kind of an 'official' toolchain.
To install it on Debian or Ubuntu, this sequence should work:
sudo add-apt-repository ppa:team-gcc-arm-embedded/ppa sudo apt-get update sudo apt-get install gcc-arm-embedded
To install on Mac OSX via Brew:
brew cask install gcc-arm-embedded
For news about this toolchain as well as downloads for Windows and OS X, see their project page.