It turned out that ARM decided to make our life easier (sarcasm) by deprecating the use of PPA - their page at launchpad now has an anouncement: "... all new binary and source packages will not be released on Launchpad henceforth ...".

So, to make use of their latest arm-none-eabi-gdb you have to install gcc-arm-embedded manually.

Remove arm-none-eabi-gcc from your system:

sudo apt remove gcc-arm-none-eabi

Download latest version (Linux x86_64 Tarball) from their website, check its MD5. Unpack it into some directory. I used /usr/share/ :

sudo tar xjf gcc-arm-none-eabi-YOUR-VERSION.bz2 -C /usr/share/

Create links so that binaries are accessible system-wide:

sudo ln -s /usr/share/gcc-arm-none-eabi-YOUR-VERSION/bin/arm-none-eabi-gcc /usr/bin/arm-none-eabi-gcc 
sudo ln -s /usr/share/gcc-arm-none-eabi-YOUR-VERSION/bin/arm-none-eabi-g++ /usr/bin/arm-none-eabi-g++
sudo ln -s /usr/share/gcc-arm-none-eabi-YOUR-VERSION/bin/arm-none-eabi-gdb /usr/bin/arm-none-eabi-gdb
sudo ln -s /usr/share/gcc-arm-none-eabi-YOUR-VERSION/bin/arm-none-eabi-size /usr/bin/arm-none-eabi-size
sudo ln -s /usr/share/gcc-arm-none-eabi-YOUR-VERSION/bin/arm-none-eabi-objcopy /usr/bin/arm-none-eabi-objcopy

Install dependencies. ARM's "full installation instructions" listed in readme.txt won't tell you what dependencies are - you have to figure it out by trial and error. In my system I had to manually create symbolic links to force it to work:

sudo apt install libncurses-dev
sudo ln -s /usr/lib/x86_64-linux-gnu/libncurses.so.6 /usr/lib/x86_64-linux-gnu/libncurses.so.5
sudo ln -s /usr/lib/x86_64-linux-gnu/libtinfo.so.6 /usr/lib/x86_64-linux-gnu/libtinfo.so.5

Check if it works:

arm-none-eabi-gcc --version
arm-none-eabi-g++ --version
arm-none-eabi-gdb --version
arm-none-eabi-size --version
Answer from Aleksander Khoroshko on askubuntu.com
Top answer
1 of 5
49

It turned out that ARM decided to make our life easier (sarcasm) by deprecating the use of PPA - their page at launchpad now has an anouncement: "... all new binary and source packages will not be released on Launchpad henceforth ...".

So, to make use of their latest arm-none-eabi-gdb you have to install gcc-arm-embedded manually.

Remove arm-none-eabi-gcc from your system:

sudo apt remove gcc-arm-none-eabi

Download latest version (Linux x86_64 Tarball) from their website, check its MD5. Unpack it into some directory. I used /usr/share/ :

sudo tar xjf gcc-arm-none-eabi-YOUR-VERSION.bz2 -C /usr/share/

Create links so that binaries are accessible system-wide:

sudo ln -s /usr/share/gcc-arm-none-eabi-YOUR-VERSION/bin/arm-none-eabi-gcc /usr/bin/arm-none-eabi-gcc 
sudo ln -s /usr/share/gcc-arm-none-eabi-YOUR-VERSION/bin/arm-none-eabi-g++ /usr/bin/arm-none-eabi-g++
sudo ln -s /usr/share/gcc-arm-none-eabi-YOUR-VERSION/bin/arm-none-eabi-gdb /usr/bin/arm-none-eabi-gdb
sudo ln -s /usr/share/gcc-arm-none-eabi-YOUR-VERSION/bin/arm-none-eabi-size /usr/bin/arm-none-eabi-size
sudo ln -s /usr/share/gcc-arm-none-eabi-YOUR-VERSION/bin/arm-none-eabi-objcopy /usr/bin/arm-none-eabi-objcopy

Install dependencies. ARM's "full installation instructions" listed in readme.txt won't tell you what dependencies are - you have to figure it out by trial and error. In my system I had to manually create symbolic links to force it to work:

sudo apt install libncurses-dev
sudo ln -s /usr/lib/x86_64-linux-gnu/libncurses.so.6 /usr/lib/x86_64-linux-gnu/libncurses.so.5
sudo ln -s /usr/lib/x86_64-linux-gnu/libtinfo.so.6 /usr/lib/x86_64-linux-gnu/libtinfo.so.5

Check if it works:

arm-none-eabi-gcc --version
arm-none-eabi-g++ --version
arm-none-eabi-gdb --version
arm-none-eabi-size --version
2 of 5
10

I've wrapped the script here by @kmhallen into a semi-automated debian package builder here: https://gitlab.com/alelec/arm-none-eabi-gcc-deb/-/releases

Installing a package like this means you can skip the tedious manual symlinks to put tools on the path, and just as importantly you can uninstall / upgrade to newer packages (assuming I remember to make more packages)

🌐
Ubuntu
packages.ubuntu.com › jammy › gcc-arm-none-eabi
Ubuntu – Details of package gcc-arm-none-eabi in jammy
Download Source Package gcc-arm-none-eabi: [gcc-arm-none-eabi_10.3-2021.07-4.dsc] [gcc-arm-none-eabi_10.3-2021.07.orig.tar.bz2] [gcc-arm-none-eabi_10.3-2021.07-4.debian.tar.xz] Maintainer: Ubuntu MOTU Developers (Mail Archive) · Please consider filing a bug or asking a question via Launchpad ...
🌐
Quora
quora.com › How-do-you-install-arm-none-Eabi-GDB-on-Ubuntu-20-04-LTS-Focal-Fossa-apt-gcc-arm-Ubuntu
How to install arm none Eabi GDB on Ubuntu 20.04 LTS (Focal Fossa, apt, gcc, arm, Ubuntu) - Quora
Download and run the installer to install arm-none-eabi-gcc and arm-none-eabi-gdb. Select the default destination folder: C:\Program Files (x86)\GNU Arm Embedded Toolchain\10 2020-q4-major.
🌐
Ubuntu
packages.ubuntu.com › bionic › gcc-arm-none-eabi
Ubuntu – Error
two or more packages specified (gcc-arm-none-eabi bionic) Content Copyright © 2025 Canonical Ltd.; See license terms. Ubuntu is a trademark of Canonical Ltd. Learn more about this site.
🌐
Arm Developer
developer.arm.com › downloads › - › gnu-rm
Downloads | GNU Arm Embedded Toolchain Downloads – Arm Developer
See the downloaded package readme.txt file for full installation instructions. For the Linux, Mac, and source packages, readme.txt is in the share/doc/gcc-arm-none-eabi folder.
🌐
Howtoinstall.me
howtoinstall.me › ubuntu › 18-04 › gcc-arm-none-eabi
How to Install gcc-arm-none-eabi in Ubuntu 18.04
Ubuntu · 18.04 · gcc-arm-none-eabi · Install gcc-arm-none-eabi by entering the following commands in the terminal: sudo apt update sudo apt install gcc-arm-none-eabi · Description: GCC cross compiler for ARM Cortex-A/R/M processors · Bare metal compiler for embedded ARM chips using Cortex-M, ...
Find elsewhere
🌐
Linux Mint Forums
forums.linuxmint.com › board index › main edition support › software & applications
Getting to work ARM-compiler arm-none-eabi with Linux 21 Vanessa - Linux Mint Forums
November 28, 2022 - sudo ln -s /usr/share/gcc-arm-11.2-2022.02-x86_64-arm-none-eabi/bin/arm-none-eabi-gcc /usr/bin/arm-none-eabi-gcc ... 3)Install dependency sudo apt install libncurses-dev 4) Create links 5) From here on: I can call arm-none-eabi-gcc and g++ version without an error.
🌐
Ubuntu
packages.ubuntu.com › focal › devel › gcc-arm-none-eabi
Details of package gcc-arm-none-eabi in focal
two or more packages specified (gcc-arm-none-eabi focal) Content Copyright © 2025 Canonical Ltd.; See license terms. Ubuntu is a trademark of Canonical Ltd. Learn more about this site.
🌐
GitHub
github.com › nikeboke › GNU-Arm-Embedded-Toolchain-on-Ubuntu-20.04
GitHub - nikeboke/GNU-Arm-Embedded-Toolchain-on-Ubuntu-20.04: Installation steps arm-none-eabi-gcc
ARM_TOOLCHAIN_VERSION=$(curl -s https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-rm/downloads | grep -Po ' arm-none-eabi-gcc --version arm-none-eabi-g++ --version
Author   nikeboke
🌐
Apache
mynewt.apache.org › latest › get_started › native_install › cross_tools.html
Installing the Cross Tools for ARM — Apache Mynewt latest documentation
$ sudo apt-get remove ... apt-get install gcc-arm-none-eabi $ sudo apt-get install gdb-arm-none-eabi · Download and run the installer to install arm-none-eabi-gcc and arm-none-eabi-gdb....
🌐
DevManuals
devmanuals.net › install › ubuntu › ubuntu-16-04-LTS-Xenial-Xerus › how-to-install-gcc-arm-none-eabi.html
How to install gcc-arm-none-eabi On Ubuntu 16.04 Lts? Uninstall and remove gcc-arm-none-eabi Package
In this tutorial you will learn how to update and install gcc-arm-none-eabi On Ubuntu 16.04 Lts? Learn how to uninstall and completely remove the package gcc-arm-none-eabi from Ubuntu 16.04 LTS Operating System. ... Above command will download the package lists for Ubuntu 16.04 on your system.