A few months ago I installed Eclipse on Ubuntu 18.04 (following the instructions on Configure Eclipse - Getting Started with Toradex) and I was able to debug my application on the Colibri iMX7D that I am using. At that time, the module ran on Angstrom v2017.12.
Lately I updated the module to Torizon 5.6.0 build 13 and Eclipse is now complaining that it cannot start gdb. In the Eclipse debug configuration, “GDB debugger” is still configured as “arm-angstrom-linux-gnueabi-gdb” which is probably wrong …
So my (very basic) question is, how do I install GDB on the module and configure Eclipse such that I can debug again ?
Note that I do not use Docker (yet). I suppose it is possible to install GDB and debug an application without using docker ?
(The reason I migrated to Torizon is that I want to modify the device tree)
I did have a quick look at the Visual Studio solution but I would like to add yet another IDE to the list that I’m already using for various other projects. Eclipse is an IDE that I already use.
And since Toradex itself already has lots of articles about using Eclipse I wonder why this should not work with Torizon.
Another thing is that I don’t want to start using Docker immediately since it adds another ‘new thing’ to this project which already involves lots of new stuff (Torizon, modifying device trees, using the M4 core for real time stuff, etc.)
Isn’t there simply an equivalent of apt-get or yum to install GDB ? Or even just a tar/zip with the executables ?
Thanks for the feedback. We currently have no Eclipse workflow setup for TorizonCore but there are a few works on improving our tools and even developing new ones. Therefore, if you wish, we can forward the intention to use Eclipse to our team but we cannot guarantee that this will be available anytime soon.
About this second part of your message, I’d like to clarify a few points from TorizonCore. This distribution was built so that you could abstract most things off your project and rely on containers for your application development. The base distro will not come with apt-get nor any other things like that as you could simply add the desired packages to a container. This helps especially as you’d not need to generate a new custom image for every new package that you’d need. You can simply update the docker container.
I would certainly appreciate it if Toradex adds an Eclipse workflow for Torizon !
In the meanwhile, I’ll have a look at the proposed link for extensions and also to the possibility to use containers with gdb included.
Work on this project is not full time so I may not be able to report back immediately, but I’ll certainly keep you informed about any progress I’ll make and which may help you guys as well.
Well, if arm-angstrom-linux-gnueabi-gdb is still installed on your host machine, then it should work (… with your Linux target, but not necessarily with Torizon target, I don’t know).
Alternatively on Ubuntu you may use gdb-multiarch (sudo apt install gdb-multiarch), then just replace “GDB debugger” setting with gdb-multiarch.
Eclipse error messages often are cryptic and not helpful. I had problems with default Yocto ssh variant (dropbear, isn’t it?). From some version Eclipse just got unable to talk to it. Switching to openssh (openssh-sshd) solved Eclipse gdb issue. On Linux target you could use “opkd list | grep ssh” to reveal ssh variant.
I want to remark that opkg list | grep ssh would work only on Linux distros built with opkg (usually set by the PACKAGE_CLASSES ?= "package_ipk" line on our build/conf/local.conf) package management system (Opkg – Yocto Project) and not on TorizonCore, as all “package operations” must be performed from within containers.