Invoking GDB
============
Invoke GDB by running the program `gdb'. Once started, GDB reads
commands from the terminal until you tell it to exit.
You can also run `gdb' with a variety of arguments and options, to
specify more of your debugging environment at the outset.
The command-line options described here are designed to cover a
variety of situations; in some environments, some of these options may
effectively be unavailable.
The most usual way to start GDB is with one argument, specifying an
executable program:
gdb PROGRAM
You can also start with both an executable program and a core file
specified:
gdb PROGRAM CORE
You can, instead, specify a process ID as a second argument, if you
want to debug a running process:
gdb PROGRAM 1234
would attach GDB to process `1234' (unless you also have a file named
`1234'; GDB does check for a core file first).
Taking advantage of the second command-line argument requires a
fairly complete operating system; when you use GDB as a remote debugger
attached to a bare board, there may not be any notion of "process", and
there is often no way to get a core dump. GDB will warn you if it is
unable to attach or to read core dumps.
You can optionally have `gdb' pass any arguments after the
executable file to the inferior using `--args'. This option stops
option processing.
gdb --args gcc -O2 -c foo.c
This will cause `gdb' to debug `gcc', and to set `gcc''s
command-line arguments (Note:Arguments) to `-O2 -c foo.c'.
You can run `gdb' without printing the front material, which
describes GDB's non-warranty, by specifying `-silent':
gdb -silent
You can further control how GDB starts up by using command-line
options. GDB itself can remind you of the options available.
Type
gdb -help
to display all available options and briefly describe their use (`gdb
-h' is a shorter equivalent).
All options and command line arguments you give are processed in
sequential order. The order makes a difference when the `-x' option is
used.