| Reading time: | 15 min |
| Last updated: | 27 Apr 2026 |
| Reading time: |
| 15 min |
| Last updated: |
| 27 Apr 2026 |
This guide shows you how to install and use the tool with the most common configuration. For advanced options and complete reference information, see the official documentation. Some install guides also include optional next steps to help you explore related workflows or integrations.
Arm GNU Toolchain is a community-supported, pre-built GNU compiler toolchain for Arm-based CPUs. In this guide, you’ll learn how to install the toolchain directly from the
Arm GNU Toolchain downloads page
. This is the recommended approach for bare-metal and embedded targets such as arm-none-eabi.
For a cross-compiler targeting Arm Linux (for example aarch64-linux-gnu or arm-linux-gnueabihf), see the
Cross-compiler
install guide instead, which installs those toolchains using the Linux package manager.
There are many versions of the Arm GNU Toolchain available. We generally recommend the latest version, as this will contain the latest optimization improvements and support for the latest Arm IP.
However there are reasons you may wish to use earlier compiler versions, so older versions are also available.
Arm GNU Toolchain releases consist of cross toolchains for the following host operating systems:
Linux
Windows
macOS
Download the correct toolchain variant for your development needs from the Arm Developer website .
Unpack the downloaded file to the install directory. The exact file name will depend on the flavor selected and will be formatted as follows:
tar xJf arm-gnu-toolchain-<version>-<host-arch>-<TRIPLE>.tar.xz -C /path/to/install/dir
Add the bin directory to the PATH environment variable (bash):
export PATH=/path/to/install/dir/bin:$PATH
The following is an example of a specific version for an Arm Linux host and the AArch32 bare-metal target:
The following commands uses Arm GNU Toolchain version 15.2.Rel1. The same commands work with other versions. Replace the file used in these steps with the file for your version of choice. To find the latest version, see Arm GNU Toolchain downloads .
wget https://developer.arm.com/-/media/Files/downloads/gnu/15.2.rel1/binrel/arm-gnu-toolchain-15.2.rel1-aarch64-arm-none-eabi.tar.xz
tar xJf arm-gnu-toolchain-15.2.rel1-aarch64-arm-none-eabi.tar.xz -C $HOME
echo 'export PATH="$PATH:$HOME/arm-gnu-toolchain-15.2.rel1-aarch64-arm-none-eabi/bin"' >> ~/.bashrc
source ~/.bashrc
Downloads for macOS are available as tar files (.tar.xz) and package files (.pkg).
For .tar.xz files, unpack the downloaded file to the install directory. Replace the
tar xJf arm-gnu-toolchain-<version>-<host-arch>-<TRIPLE>.tar.xz -C /path/to/install/dir
For .pkg files, use the installer. Replace the
sudo installer -pkg arm-gnu-toolchain-<version>-<host-arch>-<TRIPLE>.pkg -target /
Use a text editor to add the bin directory as a new line in /etc/paths.
For example, for version 15.2.rel1, the path could be: /Applications/ArmGNUToolchain/15.2.rel1/arm-none-eabi/bin
The /etc/paths file is a list of paths to search:
/usr/local/bin
/System/Cryptexes/App/usr/bin
/usr/bin
/bin
/usr/sbin
/sbin
/Applications/ArmGNUToolchain/15.2.rel1/arm-none-eabi/bin
The following is a specific example for macOS with Apple Silicon and the AArch32 bare-metal target:
The following commands use Arm GNU Toolchain version 15.2.Rel1. The same commands work with other versions. Replace the file used in these steps with the file for your version of choice. To find the latest version, see Arm GNU Toolchain downloads .
wget https://developer.arm.com/-/media/Files/downloads/gnu/15.2.rel1/binrel/arm-gnu-toolchain-15.2.rel1-darwin-arm64-arm-none-eabi.pkg
sudo installer -pkg arm-gnu-toolchain-15.2.rel1-darwin-arm64-arm-none-eabi.pkg -target /
echo '/Applications/ArmGNUToolchain/15.2.rel1/arm-none-eabi/bin' | sudo tee -a /etc/paths
The steps depend on the release version.
Double-click the installer, such as arm-gnu-toolchain-14.3.rel1-mingw-w64-i686-arm-none-eabi.exe, and follow the on-screen instructions.
The installer can also be run on the command line. When run on the command-line, you can set the following options:
/S Run in silent mode/P Adds the installation bin directory to the system PATH/R Adds Install Folder registry entry for the install.For example, to install the tools silently, update the search path and add the registry entry run. Replace
arm-gnu-toolchain-<version>-mingw-w64-i686-arm-none-eabi.exe /S /P /R
The zip package is a backup to Windows installer for those who can’t run the installer. You can unzip the package and then run the tools directly.
Double-click on the installer, such as arm-gnu-toolchain-15.2.rel1-mingw-w64-i686-arm-none-eabi.msi, and follow on-screen instructions.
To install silently from the command line, run the following. Replace
msiexec /i arm-gnu-toolchain-<version>-mingw-w64-i686-arm-none-eabi.msi EULA=1 /quiet
The zip package is a backup to Windows installer for those who can’t run the installer. You can unzip the package and then run the tools directly.
Arm GNU Toolchain is open source software. You don’t need any licenses to use it.
To use the Arm GNU Toolchain with Arm Development Studio , you need to register the toolchain .
To verify the installation is correct, enter:
arm-none-eabi-gcc -v
Additional examples are included in the toolchain installation. If you installed to $HOME using the example provided in this guide, you can find them at:
$HOME/arm-gnu-toolchain-15.2.rel1-aarch64-arm-none-eabi/share/doc/gcc-arm-none-eabi/examples
You’re now ready to use Arm GNU Toolchain.
How would you rate this tool quick-install guide?
What is the primary reason for your feedback ?
Thank you! We're grateful for your feedback.