I downloaded gcc-arm-11.2-2022.02-x86_64-arm-none-eabi.tar.xz from https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/downloads.
Unpacked the tar into my home folder. When I then run
p@bp-legion:~/Downloads/gcc-arm-11.2-2022.02-x86_64-arm-none-eabi/bin$ ./arm-none-eabi-gdb --version./arm-none-eabi-gdb: error while loading shared libraries: libpython3.6m.so.1.0: cannot open shared object file: No such file or directory
I got this AFTER being forced to `ln`
I didn't graduate on linux, did I miss "the easy way" to get the arm toolchain working on my ubuntu installation?
I can't imagine that I am the first to install the arm toolchain on a fresh installed ubuntu 22.04 environment......
Thank you for pointing out the issues around python incompatibility.
For Ubuntu 20.04, Python 3.6 could be installed through the PPA route as mentioned in https://bugs.linaro.org/show_bug.cgi?id=5842#c1, however, this might not work for Ubuntu 22.04.
For the next release, we are working on updating the version of Python that is used in GDB, so that there will be better compatibility for the newer linux distros. Following on from that, we do want to take a look at other approaches, such as the two binary approach or static linking approach, to improve on the compatibility.
Remember that every distribution has its policy about what Python version to install as their system-wide default. For example, for Debian 11 (stable), the current version is Python 3.9, not 3.8, as required by arm-toolchain release 11.3 or Python 3.6 of release 11.2. Any Python version you choose to release your executables would be equally arbitrary and conflicting unless you target a particular Linux distribution/version.
I believe doing another duplicated, complete Python installation to use gdb when someone does not need Python support in gdb makes no sense. Therefore, looking forward, I think the best solution is:
1) Two executables, arm-none-gdb and arm-none-gdb-py, as in arm-toolchain release 10.2) Statically linked Python on gdb-py, whatever version you choose.
Currently, the only way to use the arm-toolchain without worrying about Python versions and embarking on tedious workarounds is to use arm-none-gdb (without Pyhton support) in arm-toolchain release 10.
For the typical end user, it may be more convenient to check their Linux distribution for the package "gcc-arm-none-eabi". For example, Debian testing and Ubuntu 22 already have arm-toolchian release 10 in its package managers.