Installing an ARM aarch64 developer toolchain - cu-ecen-aeld/aesd-assignments GitHub Wiki

Overview

This page discusses how to install an ARM prebuilt cross compile toolchain on Linux.

Steps for Ubuntu 22.04

Use these steps starting Fall 2024 if you are using Ubuntu 22.04 as your build machine. See steps below if you've setup your build machine on Ubuntu 20.04 instead.

  1. Go to https://developer.arm.com/downloads/-/arm-gnu-toolchain-downloads
  2. Find the download link for AArch64 GNU/Linux target (aarch64-none-linux-gnu) under the x86_64 Linux hosted cross toolchains section.
  1. Follow the Installation Instructions section in the Release Notes page linked from the downloads page to extract the tar file. Checking the MD5 is optional.
  2. To avoid the need to edit your path, add the path to your ~/.bashrc, for instance:
export PATH=$PATH:/path/to/install/arm-gnu-toolchain-13.3.rel1-x86_64-aarch64-none-linux-gnu/bin

Where /path/to/install is the location where you extracted the zip file. This can be anywhere on the root filesystem (but should not be checked into revision control). You may want to use your home directory and an arm-cross-compiler subdirectory.

Steps for Ubuntu 20.04

If you are using Ubuntu 20.04 for your build machine, you will need to use an older version of the GNU toolchain. See instructions below

  1. Go to https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-a/downloads
  2. Find the download link for AArch64 GNU/Linux target (aarch64-none-linux-gnu)
  • Latest tested is AArch64 10.3-2021.07-x86_64 - please use this version for compatibility with assignments/test frameworks
  1. Follow the Installation Instructions section in the Release Notes page linked from the downloads page to extract the tar file. Checking the MD5 is optional.
  2. To avoid the need to edit your path, add the path to your ~/.bashrc, for instance:
export PATH=$PATH:/path/to/install/gcc-arm-10.3-2021.07-x86_64-aarch64-none-linux-gnu/bin

Where /path/to/install is the location where you extracted the zip file. This can be anywhere on the root filesystem (but should not be checked into revision control). You may want to use your home directory and an arm-cross-compiler subdirectory.