Using the GNU Project Debugger for debugging
While developing any project we, from time to time, end up struggling to understand subtle bugs. The GNU Project Debugger (GDB) is available as a package within Poky and is installed in SDK images by default, as was detailed in Chapter 8, Developing with the Yocto Project.
Tip
In order to install debugging packages that contain the debug symbols and debugging tools in an image, add IMAGE_FEATURES += "dbg-pkgs tools-debug"
in local.conf
.
The use of the SDK, or an image with the debugging packages and tools installed, allows us to debug applications directly in the target, as we usually do in our development machine.
Sometimes, due to memory or disk space constraints, it is not possible to use GDB directly on the target to debug. These constraints arise because GDB needs to load the debugging information and the binaries of the process being debugged, and it needs to perform many computations to locate information such as function names, variable names...