Debug the Application

You can debug your application many ways. The method depends on factors such as the component you are debugging, whether or not you are doing a post-mortem analysis, and your debugging skills and productivity. For example, do you know how to use the GNU Project Debugger (gdb) from a console? Or, is it better for you to use a remote user interface that is part of an Integrated Development Environment (IDE) such as Eclipse?

For general information on debugging an application, see the “Overview” topic under “Debugging Your First AGL Application”.

Three methods exist:

  • Use gdb on the target.

    NOTE:

    How to use gdb and other debugging tools such as valgrind, strace, and so forth is beyond the scope of the AGL Documentation. See the appropriate documentation for third-party debugging tools.

  • Use Core Dumps if you have set the agl-devel feature. Core Dumps are obviously more suited for post-mortem analysis. For features, see the “Initializing Your Build Environment” topic.

    NOTE:

    Core Dumps are available only with the “Flunky Flounder” release (i.e. 6.x).

  • Use XDS remotely, which is based on gdb and gdbserver. See the “Using the XDS Command Line” topic for more information.

    For information on how to remotely debug the application using XDS from within an IDE, see the “Using an IDE” section.

In order to use third-party debugging tools, you need to include the tools in the target image. You gain access to the tools by enabling the agl-devel feature when you run the aglsetup.sh script as described in the “Initializing Your Build Environment” section.