Making gdb do more (debugging) for less (re-typing)

Compiling C/C++ Programs For gdb Support

basic gdb commands - just to "clear the line"

Running And Stopping

Running And Stopping - cont.

  • In the gdb prompt:

    Examine execution stack and variables

    Examine The Source Code

    Break-Point Basics

    Beautifying Output (make gdb closer to its GUIs)

    the display command

    pretty printing

    Current Frame Information

    print/<base>

    examining memory with 'x'

    Convenience Variables

    A Silly Feature - TUI

    50 Ways To Supply Program Parameters..

    The Annoying C-Preprocessor Macros

    Program Execution Control

    Finish And Until

    return

    Conditional Break-Points

    Other Break-Point Commands

    Watch-Points

    Hardware Vs. Software Watch-Points

    I Want To Do This - Again!

    Where Have My Source Files Gone?

    gdb user-commands support

    Convenience Macros To Scan Data Structures

    Writing The 'access_data_first' Macro

    Writing The 'access_data_next' Macro

    Writing The 'access_data_next' Macro

    Writing The 'access_data_at' Macro

    Command Hooks

    Program Execution run/stop Hooks

    gdb and signals handling

    gdb - default signals handling

    default signals handling - cont.

    Changing Handling Of Signals

    passing signals to programs

    Multi-Threading Features In gdb

    Viewing Thread Stacks

    Controlling Thread Scheduling

    Disabling The Scheduler

    Thread-Specific Break-Points

    Naming Names - How?

    Naming Names - Using macros+logging+Perl

    Thread, LWP and 'top' with 'H'

    Debugging Multiple-Processes (forked) Programs

    follow-fork setting

    detach-on-fork setting

    Controlling Forked Processes

    Debugging Shared Libraries

    Debugging Python C Modules

    References

    1. gdb manual - online HTML version - http://sourceware.org/gdb/current/onlinedocs/gdb_toc.html
    Originally written by Valid HTML 4.01!guy keren