Choosing modes
--------------
You can run GDB in various alternative modes--for example, in batch
mode or quiet mode.
`-nx'
`-n'
Do not execute commands found in any initialization files.
Normally, GDB executes the commands in these files after all the
command options and arguments have been processed. Note:Command
files.
`-quiet'
`-silent'
`-q'
"Quiet". Do not print the introductory and copyright messages.
These messages are also suppressed in batch mode.
`-batch'
Run in batch mode. Exit with status `0' after processing all the
command files specified with `-x' (and all commands from
initialization files, if not inhibited with `-n'). Exit with
nonzero status if an error occurs in executing the GDB commands in
the command files.
Batch mode may be useful for running GDB as a filter, for example
to download and run a program on another computer; in order to
make this more useful, the message
Program exited normally.
(which is ordinarily issued whenever a program running under GDB
control terminates) is not issued when running in batch mode.
`-nowindows'
`-nw'
"No windows". If GDB comes with a graphical user interface (GUI)
built in, then this option tells GDB to only use the command-line
interface. If no GUI is available, this option has no effect.
`-windows'
`-w'
If GDB includes a GUI, then this option requires it to be used if
possible.
`-cd DIRECTORY'
Run GDB using DIRECTORY as its working directory, instead of the
current directory.
`-fullname'
`-f'
GNU Emacs sets this option when it runs GDB as a subprocess. It
tells GDB to output the full file name and line number in a
standard, recognizable fashion each time a stack frame is
displayed (which includes each time your program stops). This
recognizable format looks like two `\032' characters, followed by
the file name, line number and character position separated by
colons, and a newline. The Emacs-to-GDB interface program uses
the two `\032' characters as a signal to display the source code
for the frame.
`-epoch'
The Epoch Emacs-GDB interface sets this option when it runs GDB as
a subprocess. It tells GDB to modify its print routines so as to
allow Epoch to display values of expressions in a separate window.
`-annotate LEVEL'
This option sets the "annotation level" inside GDB. Its effect is
identical to using `set annotate LEVEL' (Note:Annotations).
Annotation level controls how much information does GDB print
together with its prompt, values of expressions, source lines, and
other types of output. Level 0 is the normal, level 1 is for use
when GDB is run as a subprocess of GNU Emacs, level 2 is the
maximum annotation suitable for programs that control GDB.
`-async'
Use the asynchronous event loop for the command-line interface.
GDB processes all events, such as user keyboard input, via a
special event loop. This allows GDB to accept and process user
commands in parallel with the debugged process being run(1), so
you don't need to wait for control to return to GDB before you
type the next command. (_Note:_ as of version 5.1, the target
side of the asynchronous operation is not yet in place, so
`-async' does not work fully yet.)
When the standard input is connected to a terminal device, GDB
uses the asynchronous event loop by default, unless disabled by the
`-noasync' option.
`-noasync'
Disable the asynchronous event loop for the command-line interface.
`--args'
Change interpretation of command line so that arguments following
the executable file are passed as command line arguments to the
inferior. This option stops option processing.
`-baud BPS'
`-b BPS'
Set the line speed (baud rate or bits per second) of any serial
interface used by GDB for remote debugging.
`-tty DEVICE'
`-t DEVICE'
Run using DEVICE for your program's standard input and output.
`-tui'
Activate the Terminal User Interface when starting. The Terminal
User Interface manages several text windows on the terminal,
showing source, assembly, registers and GDB command outputs (Note:GDB Text User Interface.). Do not use this option if you run
GDB from Emacs (Note:Using GDB under GNU Emacs.).
`-interpreter INTERP'
Use the interpreter INTERP for interface with the controlling
program or device. This option is meant to be set by programs
which communicate with GDB using it as a back end.
`--interpreter=mi' (or `--interpreter=mi1') causes GDB to use the
"gdb/mi interface" (Note:The GDB/MI Interface.). The
older GDB/MI interface, included in GDB version 5.0 can be
selected with `--interpreter=mi0'.
`-write'
Open the executable and core files for both reading and writing.
This is equivalent to the `set write on' command inside GDB (Note:Patching).
`-statistics'
This option causes GDB to print statistics about time and memory
usage after it completes each command and returns to the prompt.
`-version'
This option causes GDB to print its version number and no-warranty
blurb, and exit.
---------- Footnotes ----------
(1) GDB built with DJGPP tools for MS-DOS/MS-Windows supports this
mode of operation, but the event loop is suspended when the debuggee
runs.