As far as I can see, there are two options:

  • Install an old version (as pointed out by Chaos)
  • Install gdb-multiarch, which actually worked for me.
Answer from user1729210 on askubuntu.com
🌐
Debian
packages.debian.org › buster › gdb-arm-none-eabi
Details of package gdb-arm-none-eabi in buster
two or more packages specified (gdb-arm-none-eabi buster) See our contact page to get in touch. Content Copyright © 1997 - 2025 SPI Inc.; See license terms. Debian is a trademark of SPI Inc. Learn more about this site.
🌐
GitHub
github.com › arm-embedded › gdb-arm-none-eabi.debian › actions
Actions · arm-embedded/gdb-arm-none-eabi.debian
Bare metal GNU debugger for embedded ARM chips using Cortex-A/R/M debianization - Actions · arm-embedded/gdb-arm-none-eabi.debian
Author   arm-embedded
🌐
Debian
tracker.debian.org › pkg › gdb-arm-none-eabi
gdb-arm-none-eabi - Debian Package Tracker
[2014-01-06] gdb-arm-none-eabi 1 MIGRATED to testing (Debian testing watch)
🌐
Debian
packages.debian.org › stretch › gdb-arm-none-eabi
Debian -- Error
two or more packages specified (gdb-arm-none-eabi stretch) See our contact page to get in touch. Content Copyright © 1997 - 2026 SPI Inc.; See license terms. Debian is a trademark of SPI Inc. Learn more about this site.
🌐
Debian
packages.debian.org › jessie › gdb-arm-none-eabi
Client Challenge
JavaScript is disabled in your browser · Please enable JavaScript to proceed · A required part of this site couldn’t load. This may be due to a browser extension, network issues, or browser settings. Please check your connection, disable any ad blockers, or try using a different browser
🌐
GitHub
github.com › arm-embedded › gdb-arm-none-eabi.debian
GitHub - arm-embedded/gdb-arm-none-eabi.debian: Bare metal GNU debugger for embedded ARM chips using Cortex-A/R/M debianization
Bare metal GNU debugger for embedded ARM chips using Cortex-A/R/M debianization - arm-embedded/gdb-arm-none-eabi.debian
Author   arm-embedded
🌐
Debian
packages.debian.org › sid › gdb-arm-none-eabi
Debian -- Details of package gdb-arm-none-eabi in sid
/ Packages / sid (unstable) / virtual / gdb-arm-none-eabi · [ buster ] [ bullseye ] [ bookworm ] [ sid ] This is a virtual package. See the Debian policy for a definition of virtual packages. gdb-multiarch ·
Find elsewhere
🌐
Debian
packages.debian.org › stable › gdb-arm-none-eabi
Debian -- Details of package gdb-arm-none-eabi in bookworm
/ Packages / bookworm (stable) / virtual / gdb-arm-none-eabi · [ buster ] [ bullseye ] [ bookworm ] [ sid ] This is a virtual package. See the Debian policy for a definition of virtual packages. gdb-multiarch ·
🌐
Debian Manpages
manpages.debian.org › testing › gdb-arm-none-eabi › index.html
Manpages of gdb-arm-none-eabi in Debian testing — Debian Manpages
/ testing / gdb-arm-none-eabi / Contents · arm-none-eabi-run(1) Page last updated 2025-12-30T10:59:20Z · debiman HEAD, see github.com/Debian/debiman. Found a problem?
🌐
Debian Manpages
manpages.debian.org › testing › gdb-arm-none-eabi › arm-none-eabi-run.1.en.html
arm-none-eabi-run(1) — gdb-arm-none-eabi — Debian testing — Debian Manpages
January 12, 2016 - / testing / gdb-arm-none-eabi / arm-none-eabi-run(1) links · language-indep link · package tracker · raw man page · table of contents · NAME · SYNOPSIS · OPTIONS · SEE ALSO · other versions · Scroll to navigation · simulator - manual page for simulator (7.12-6+9+b2) 7.12.0.20161007-git ·
🌐
Debian
packages.debian.org › testing › gdb-arm-none-eabi
Debian -- Details of package gdb-arm-none-eabi in trixie
/ Packages / trixie (testing) / virtual / gdb-arm-none-eabi · [ buster ] [ bullseye ] [ bookworm ] [ trixie ] [ sid ] This is a virtual package. See the Debian policy for a definition of virtual packages. gdb-multiarch ·
🌐
LinuxQuestions.org
linuxquestions.org › questions › debian-26 › where-does-gdb-arm-none-eabi-go-4175558529
[SOLVED] Where does gdb-arm-none-eabi go?
November 10, 2015 - I installed gdb-arm-none-eabi using Synaptic, but I can't find in anywhere in my system. which gdb-arm-none-eabi didn't find it and find / -name "
🌐
Debian
packages.debian.org › bullseye › gdb-arm-none-eabi
Debian -- Details of package gdb-arm-none-eabi in bullseye
JavaScript is disabled in your browser · Please enable JavaScript to proceed · A required part of this site couldn’t load. This may be due to a browser extension, network issues, or browser settings. Please check your connection, disable any ad blockers, or try using a different browser
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)

🌐
Debian Manpages
manpages.debian.org › stretch › gdb-arm-none-eabi › arm-none-eabi-run(1)
arm-none-eabi-run(1) — gdb-arm-none-eabi — Debian stretch — Debian Manpages
January 12, 2016 - / stretch / gdb-arm-none-eabi / arm-none-eabi-run(1) links · language-indep link · package tracker · raw man page · table of contents · NAME · SYNOPSIS · OPTIONS · SEE ALSO · other versions · stretch 7.12-6+9+b2 · Scroll to navigation · simulator - manual page for simulator (7.12-6+9+b2) 7.12.0.20161007-git ·
🌐
Homebrew
formulae.brew.sh › formula › arm-none-eabi-gdb
arm-none-eabi-gdb — Homebrew Formulae
brew install arm-none-eabi-gdb · GNU debugger for arm-none-eabi cross development · https://www.gnu.org/software/gdb/ License: GPL-3.0-or-later · Development: Pull requests · Formula JSON API: /api/formula/arm-none-eabi-gdb.json · Formula code: arm-none-eabi-gdb.rb on GitHub ·
🌐
Command Not Found
command-not-found.com › arm-none-eabi-gdb
command-not-found.com – arm-none-eabi-gdb
curl cmd.cat/arm-none-eabi-gdb.sh · Debian · apt-get install gdb-arm-none-eabi · Ubuntu · apt-get install gdb-arm-none-eabi · Arch Linux · pacman -S arm-none-eabi-gdb · Fedora · dnf install arm-none-eabi-gdb · Windows (WSL2) sudo apt-get ...
🌐
Interrupt
interrupt.memfault.com › blog › installing-gdb
Tools we use: installing GDB for ARM - Interrupt - Memfault
August 3, 2022 - # select a specific SHA, to strictly pin the base image FROM ubuntu:22.04@sha256:bace9fb0d5923a675c894d5c815da75ffe35e24970166a48a4460a48ae6e0d19 ARG DEBIAN_FRONTEND=noninteractive # install GDB + GCC for ARM RUN apt-get update && apt-get install -y --no-install-recommends \ gcc-arm-none-eabi \ gdb-multiarch