When writing a C or C++ application, you'll need to compile it to machine code using a compiler toolchain. You can then run this compiled executable code on an Arm-based processor, or simulate it with a model.

The compiler toolchain includes the following components:

  • A compiler to translate C and C++ source code into machine code.
  • An assembler to translate assembly language source code into machine code.
  • A linker to combine multiple machine code modules into a single executable file.

Available toolchains include:

  • Arm Compiler 6. The latest and most efficient Arm C/C++ compilation toolchain, based on the armclang compiler. Arm Compiler 6 maximizes the potential of Arm Cortex and Neoverse processors and architectures, from Armv6-M to Armv8-A 64-bit Arm.
  • Arm Compiler 5. The previous generation Arm C/C++ compilation toolchain, based on the armcc compiler. Arm Compiler 5 provides stability and superb code size for legacy projects up to and including Armv7.
  • The GNU toolchain. An open source, community-developed toolchain. The GNU toolchain provides a low-cost mechanism for developing on Arm platforms.

All these toolchains can be used standalone, from the command line, or integrated into Arm Development Studio or Keil MDK IDE environments.

"Hello World" with Arm Compiler 6

Are you looking for examples that you can follow to get you started with Arm Compiler 6?

"Hello World" with GCC

Looking for examples you can follow to get you started with GCC?

Learn more about the Arm Compiler toolchain

The different tools in the compiler toolchain all work together to transform your source code into an executable binary that can run on an Arm-based processor. Understanding the different functions of these tools will help you to build your application successfully.