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.
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.
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! .....)
Arduino IDE 2.X ESP32C3 Debug not found arm-none-eabi-gdb.exe Error
Help Getting arm-none-eabi-gdb to Work on Fedora 35
visual studio code - OpenOCD GDB executable "arm-none-eabi-gdb" was not found. Please configure "cortex-debug.armToolchainPath" correctly - Stack Overflow
GDB executable "docker exec -it armdev \arm-none-eabi-gdb.exe" was not found
I am tried installing the arm embedded tool-chain and I am struggling to get arm-none-eabi-gdb to work. So far, the following commands are functioning for me: arm-none-eabi-gcc, arm-none-eabi-g++, and arm-none-eabi-size.
When I run arm-none-eabi-gcc ect. I get these results.
$ arm-none-eabi-gcc --version arm-none-eabi-gcc (GNU Arm Embedded Toolchain 10.3-2021.10) 10.3.1 20210824 (release) Copyright (C) 2020 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
These results are what I'm trying to achieve for arm-none-eabi-gdb -- which results in:
$ arm-none-eabi-gdb --version arm-none-eabi-gdb: error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory
These are the steps I took to install the arm embedded tool chain:
-
Downloaded gcc-arm-none-eabi-10.3-2021.10-x86_64-linux.tar.bz2 from https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-rm/downloads
-
Extracted the tar.bz2 by double clicking in the file system.
-
Moved the gcc-arm folder containing arm-none-eabi, bin, lib, and share using:
$ sudo mv gcc-arm-none-eabi-10.3-2021.10/* /opt/gcc-arm -
Added the following path variable to .bashrc
export PATH="/opt/gcc-arm/bin/:$PATH"
Any and all help is appreciated in helping me to get arm-none-eabi-gdb working.
This is my first post here, so I apologize if I am breaking any rules. I am also fairly new to Linux, so please correct me if I use any terminology incorrectly.
I got it working on Kubuntu 19.10 installing:
apt install libncurses5
Not installing the "-dev", development or ":i386", 32-bit versions of the library.
I installed Ubuntu 18.10 desktop (Cosmic Cuttlefish) from here, but I was unable to install gcc-arm-none-eabi:
ubuntu@ubuntu:~$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 18.10
Release: 18.10
Codename: cosmic
ubuntu@ubuntu:~$ sudo apt-get install gcc-arm-none-eabi
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package gcc-arm-none-eabi
I then installed libncurses5-dev and gcc-linaro-7.3.1-2018.05-x86_64_arm and got the same .so-related error you got.
Since I don't have this issue with 16.04 nor with 18.04, I would suggest you compile the latest GDB from source in order to avoid what may be a package/dynamic link library mismatch issue in Ubuntu 18.10:
sudo apt-get install build-essential libncurses5-dev libexpat1-dev texinfo-doc-nonfree
pushd /tmp
wget -qO- ftp://ftp.gnu.org/gnu/gdb/gdb-8.2.tar.xz | tar Jxv
mkdir gdb
cd gdb
../gdb-8.2/configure --enable-tui --with-expat --prefix=/usr/local --target=arm-eabi --program-prefix=arm-eabi-
make all
sudo make install
popd
Install will fail because makeinfo is missing, even though I installed texinfo-doc-nonfree, but binaries will be installed:
ls /usr/local/bin
arm-eabi-gdb arm-eabi-gdb-add-index arm-eabi-run
And arm-eabi-gdb will launch properly this time:
arm-eabi-gdb --version
GNU gdb (GDB) 8.2
Copyright (C) 2018 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
arm-eabi-gdb -tui will work as well - I encourage you to use the TUI mode. You should like it as much as I do - I guess.
export PATH=$PATH:$HOME/arm-2008q3/bin is only valid in the shell it is executed in (and any shells spawned from that shell). So you either use that shell instead of opening a new one to execute make or edit your ~/.bashrc (see Unix: Getting Export PATH to "Stick")
I encountered the same problem and in my case the problem was that I was running a 64-bit operating system and the package to be used is a 32-bit. The fix was to install i32-libs package which allows running 32-bit applications on a 64-bit system.
# apt-get install ia32-libs