In previous versions of Ubuntu, GDB for ARM Cortex processors was part of the package gdb-arm-none-eabi. Searching https://packages.ubuntu.com/ for gdb-arm-none-eabi for Ubuntu 18.04 doesn't return any results. Am I missing something or why isn't there any GDB for ARM any more?
- 854
- 573
7 Answers
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.
- 573
I had the same question, and googled some more. It seems that with modern GDB you no longer need a GDB for your specific architecture. Just use GDB.
(seems to work on my older 16.04 workstation as well. I've been typing arm-none-eabi-gdb all those years, while just "gdb" would've worked just as well! .....)
- 424
After installing gdb-multiarch, you might want to add following symlink:
ln -s /usr/bin/gdb-multiarch /usr/bin/arm-none-eabi-gdb
to be able to execute:
arm-none-eabi-gdb
- 101
I had the same issue with Ubuntu 18.04. To install “gcc-arm-none-eabi” on Ubuntu 18.04, do:
sudo apt-get install gcc-arm-none-eabi
Using this command, the system installs all binaries into the /usr/bin folder. But some binaries are not found here, so I am using its alternative way as below. It's working for me.
If you want to use the below arm-none-eabi utility,
arm-none-eabi-gdb
arm-none-eabi-as
arm-none-eabi-objcopy
Download the ARM-GCC toolchain from gnu-mcu-eclipse/arm-none-eabi-gcc.
I have downloaded "gnu-mcu-eclipse-arm-none-eabi-gcc-6.3.1-1.1-20180331-0618-centos64" for my x64 System.
After it has downloaded successfully, extract the compressed file. Go to
/gnu-mcu-eclipse-arm-none-eabi-gcc-6.3.1-1.1-20180331-0618-centos64/gnu-mcu-eclipse/arm-none-eabi-gcc/6.3.1-1.1-20180331-0618/bin
Copy the GDB and objcopy into the /usr/bin directory:
sudo cp arm-none-eabi-gdb /usr/bin/
sudo cp arm-none-eabi-objcopy /usr/bin/
After the copy, you can use GCC and GDB.
- 149
- 4
Install gdb-multiarch instead which can serve your requirement:
$ sudo apt install gdb-multiarch
$ gdb-multiarch my.elf
- 151
packages for ARM's pre-built toolchain, download the "Linux 64-bit" file and put its bin directory on your path. Here's one way to do it:
$ cd /usr/local/share
$ tar xjf ~/Downloads/gcc-arm-none-eabi-9-2019-q4-major-x86_64-linux.tar.bz2
Then, use your editor of choice to append to your PATH in the appropriate shell init file (e.g. ~/.zshrc or ~/.bashrc):
export PATH=$PATH:$HOME/local/gcc-arm-none-eabi-7-2017-q4-major/bin
arm-none-eabi-gcc --version
arm-none-eabi-g++ --version
arm-none-eabi-gdb --version
arm-none-eabi-size --version
- 241
I searched for and found that package in Synaptic package manager.
Just install synaptic and search for it.
You can find it in the software store or by sudo apt-get install synaptic
- 1