9.3. Getting Help

You can always ask the debugger itself for information on its commands, using the command help.

help, h

You can use help (abbreviated h) with no arguments to display a short list of named classes of commands:

(gdb) help
List of classes of commands:
running -- Running the program
stack -- Examining the stack
data -- Examining data
breakpoints -- Making program stop at certain points
files -- Specifying and examining files
status -- Status inquiries
support -- Support facilities
user-defined -- User-defined commands
aliases -- Aliases of other commands
obscure -- Obscure features
Type "help" followed by a class name for a list of
commands in that class.
Type "help" followed by command name for full
documentation.
Command name abbreviations are allowed if unambiguous.
(gdb)
help class

Using one of the general help classes as an argument, you can get a list of the individual commands in that class. For example, here is the help display for the class status:

(gdb) help status
Status inquiries.
List of commands:
show -- Generic command for showing things set
 with "set"
info -- Generic command for printing status
Type "help" followed by command name for full
documentation.
Command name abbreviations are allowed if unambiguous.
(gdb)
help command

With a command name as help argument, the debugger displays a short paragraph on how to use that command.

complete args

The complete args command lists all the possible completions for the beginning of a command. Use args to specify the beginning of the command you want completed. For example:

complete i

results in:

info
inspect
ignore

This is intended for use by GNU Emacs.

In addition to help, you can use the debugger commands info and show to inquire about the state of your program, or the state of the debugger itself. Each command supports many topics of inquiry; this manual introduces each of them in the appropriate context. The listings under info and under show in the Index point to all the sub-commands.

info

This command (abbreviated i) is for describing the state of your program. For example, you can list the arguments given to your program with info args, list the registers currently in use with info registers, or list the breakpoints you have set with info breakpoints. You can get a complete list of the info sub-commands with help info.

set

You can assign the result of an expresson to an environment variable with set. For example, you can set the debugger prompt to a dollar sign with set prompt $.

show

In contrast to info, show is for describing the state of the debugger itself. You can change most of the things you can show, by using the related command set; for example, you can control what number system is used for displays with set radix, or simply inquire which is currently in use with show radix.

To display all the settable parameters and their current values, you can use show with no arguments; you may also use info set. Both commands produce the same display.

Here are three miscellaneous show subcommands, all of which are exceptional in lacking corresponding set commands:

show version

Show which version of the debugger is running. You should include this information in debugger bug reports. If multiple versions of the debugger are in use at your site, you may occasionally want to determine which version of the debugger you are running; as the debugger evolves, new commands are introduced, and old ones may wither away. The version number is also announced when you start the debugger.

show copying

Display information about permission for copying the debugger.

show warranty

Display the GNU “NO WARRANTY” statement.