You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
334 lines
15 KiB
HTML
334 lines
15 KiB
HTML
4 years ago
|
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||
|
<html>
|
||
|
<!-- Copyright (C) 1988-2019 Free Software Foundation, Inc.
|
||
|
|
||
|
Permission is granted to copy, distribute and/or modify this document
|
||
|
under the terms of the GNU Free Documentation License, Version 1.3 or
|
||
|
any later version published by the Free Software Foundation; with the
|
||
|
Invariant Sections being "Free Software" and "Free Software Needs
|
||
|
Free Documentation", with the Front-Cover Texts being "A GNU Manual,"
|
||
|
and with the Back-Cover Texts as in (a) below.
|
||
|
|
||
|
(a) The FSF's Back-Cover Text is: "You are free to copy and modify
|
||
|
this GNU Manual. Buying copies from GNU Press supports the FSF in
|
||
|
developing GNU and promoting software freedom." -->
|
||
|
<!-- Created by GNU Texinfo 6.4, http://www.gnu.org/software/texinfo/ -->
|
||
|
<head>
|
||
|
<title>Mode Options (Debugging with GDB)</title>
|
||
|
|
||
|
<meta name="description" content="Mode Options (Debugging with GDB)">
|
||
|
<meta name="keywords" content="Mode Options (Debugging with GDB)">
|
||
|
<meta name="resource-type" content="document">
|
||
|
<meta name="distribution" content="global">
|
||
|
<meta name="Generator" content="makeinfo">
|
||
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||
|
<link href="index.html#Top" rel="start" title="Top">
|
||
|
<link href="Concept-Index.html#Concept-Index" rel="index" title="Concept Index">
|
||
|
<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
|
||
|
<link href="Invoking-GDB.html#Invoking-GDB" rel="up" title="Invoking GDB">
|
||
|
<link href="Startup.html#Startup" rel="next" title="Startup">
|
||
|
<link href="File-Options.html#File-Options" rel="prev" title="File Options">
|
||
|
<style type="text/css">
|
||
|
<!--
|
||
|
a.summary-letter {text-decoration: none}
|
||
|
blockquote.indentedblock {margin-right: 0em}
|
||
|
blockquote.smallindentedblock {margin-right: 0em; font-size: smaller}
|
||
|
blockquote.smallquotation {font-size: smaller}
|
||
|
div.display {margin-left: 3.2em}
|
||
|
div.example {margin-left: 3.2em}
|
||
|
div.lisp {margin-left: 3.2em}
|
||
|
div.smalldisplay {margin-left: 3.2em}
|
||
|
div.smallexample {margin-left: 3.2em}
|
||
|
div.smalllisp {margin-left: 3.2em}
|
||
|
kbd {font-style: oblique}
|
||
|
pre.display {font-family: inherit}
|
||
|
pre.format {font-family: inherit}
|
||
|
pre.menu-comment {font-family: serif}
|
||
|
pre.menu-preformatted {font-family: serif}
|
||
|
pre.smalldisplay {font-family: inherit; font-size: smaller}
|
||
|
pre.smallexample {font-size: smaller}
|
||
|
pre.smallformat {font-family: inherit; font-size: smaller}
|
||
|
pre.smalllisp {font-size: smaller}
|
||
|
span.nolinebreak {white-space: nowrap}
|
||
|
span.roman {font-family: initial; font-weight: normal}
|
||
|
span.sansserif {font-family: sans-serif; font-weight: normal}
|
||
|
ul.no-bullet {list-style: none}
|
||
|
-->
|
||
|
</style>
|
||
|
|
||
|
|
||
|
</head>
|
||
|
|
||
|
<body lang="en">
|
||
|
<a name="Mode-Options"></a>
|
||
|
<div class="header">
|
||
|
<p>
|
||
|
Next: <a href="Startup.html#Startup" accesskey="n" rel="next">Startup</a>, Previous: <a href="File-Options.html#File-Options" accesskey="p" rel="prev">File Options</a>, Up: <a href="Invoking-GDB.html#Invoking-GDB" accesskey="u" rel="up">Invoking GDB</a> [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Concept-Index.html#Concept-Index" title="Index" rel="index">Index</a>]</p>
|
||
|
</div>
|
||
|
<hr>
|
||
|
<a name="Choosing-Modes"></a>
|
||
|
<h4 class="subsection">2.1.2 Choosing Modes</h4>
|
||
|
|
||
|
<p>You can run <small>GDB</small> in various alternative modes—for example, in
|
||
|
batch mode or quiet mode.
|
||
|
</p>
|
||
|
<dl compact="compact">
|
||
|
<dd><a name="g_t_002dnx"></a></dd>
|
||
|
<dt><code>-nx</code></dt>
|
||
|
<dt><code>-n</code></dt>
|
||
|
<dd><a name="index-_002d_002dnx"></a>
|
||
|
<a name="index-_002dn"></a>
|
||
|
<p>Do not execute commands found in any initialization file.
|
||
|
There are three init files, loaded in the following order:
|
||
|
</p>
|
||
|
<dl compact="compact">
|
||
|
<dt><code><samp>system.gdbinit</samp></code></dt>
|
||
|
<dd><p>This is the system-wide init file.
|
||
|
Its location is specified with the <code>--with-system-gdbinit</code>
|
||
|
configure option (see <a href="System_002dwide-configuration.html#System_002dwide-configuration">System-wide configuration</a>).
|
||
|
It is loaded first when <small>GDB</small> starts, before command line options
|
||
|
have been processed.
|
||
|
</p></dd>
|
||
|
<dt><code><samp>~/.gdbinit</samp></code></dt>
|
||
|
<dd><p>This is the init file in your home directory.
|
||
|
It is loaded next, after <samp>system.gdbinit</samp>, and before
|
||
|
command options have been processed.
|
||
|
</p></dd>
|
||
|
<dt><code><samp>./.gdbinit</samp></code></dt>
|
||
|
<dd><p>This is the init file in the current directory.
|
||
|
It is loaded last, after command line options other than <code>-x</code> and
|
||
|
<code>-ex</code> have been processed. Command line options <code>-x</code> and
|
||
|
<code>-ex</code> are processed last, after <samp>./.gdbinit</samp> has been loaded.
|
||
|
</p></dd>
|
||
|
</dl>
|
||
|
|
||
|
<p>For further documentation on startup processing, See <a href="Startup.html#Startup">Startup</a>.
|
||
|
For documentation on how to write command files,
|
||
|
See <a href="Command-Files.html#Command-Files">Command Files</a>.
|
||
|
</p>
|
||
|
<a name="g_t_002dnh"></a></dd>
|
||
|
<dt><code>-nh</code></dt>
|
||
|
<dd><a name="index-_002d_002dnh"></a>
|
||
|
<p>Do not execute commands found in <samp>~/.gdbinit</samp>, the init file
|
||
|
in your home directory.
|
||
|
See <a href="Startup.html#Startup">Startup</a>.
|
||
|
</p>
|
||
|
</dd>
|
||
|
<dt><code>-quiet</code></dt>
|
||
|
<dt><code>-silent</code></dt>
|
||
|
<dt><code>-q</code></dt>
|
||
|
<dd><a name="index-_002d_002dquiet"></a>
|
||
|
<a name="index-_002d_002dsilent"></a>
|
||
|
<a name="index-_002dq"></a>
|
||
|
<p>“Quiet”. Do not print the introductory and copyright messages. These
|
||
|
messages are also suppressed in batch mode.
|
||
|
</p>
|
||
|
</dd>
|
||
|
<dt><code>-batch</code></dt>
|
||
|
<dd><a name="index-_002d_002dbatch"></a>
|
||
|
<p>Run in batch mode. Exit with status <code>0</code> after processing all the
|
||
|
command files specified with ‘<samp>-x</samp>’ (and all commands from
|
||
|
initialization files, if not inhibited with ‘<samp>-n</samp>’). Exit with
|
||
|
nonzero status if an error occurs in executing the <small>GDB</small> commands
|
||
|
in the command files. Batch mode also disables pagination, sets unlimited
|
||
|
terminal width and height see <a href="Screen-Size.html#Screen-Size">Screen Size</a>, and acts as if <kbd>set confirm
|
||
|
off</kbd> were in effect (see <a href="Messages_002fWarnings.html#Messages_002fWarnings">Messages/Warnings</a>).
|
||
|
</p>
|
||
|
<p>Batch mode may be useful for running <small>GDB</small> as a filter, for
|
||
|
example to download and run a program on another computer; in order to
|
||
|
make this more useful, the message
|
||
|
</p>
|
||
|
<div class="smallexample">
|
||
|
<pre class="smallexample">Program exited normally.
|
||
|
</pre></div>
|
||
|
|
||
|
<p>(which is ordinarily issued whenever a program running under
|
||
|
<small>GDB</small> control terminates) is not issued when running in batch
|
||
|
mode.
|
||
|
</p>
|
||
|
</dd>
|
||
|
<dt><code>-batch-silent</code></dt>
|
||
|
<dd><a name="index-_002d_002dbatch_002dsilent"></a>
|
||
|
<p>Run in batch mode exactly like ‘<samp>-batch</samp>’, but totally silently. All
|
||
|
<small>GDB</small> output to <code>stdout</code> is prevented (<code>stderr</code> is
|
||
|
unaffected). This is much quieter than ‘<samp>-silent</samp>’ and would be useless
|
||
|
for an interactive session.
|
||
|
</p>
|
||
|
<p>This is particularly useful when using targets that give ‘<samp>Loading section</samp>’
|
||
|
messages, for example.
|
||
|
</p>
|
||
|
<p>Note that targets that give their output via <small>GDB</small>, as opposed to
|
||
|
writing directly to <code>stdout</code>, will also be made silent.
|
||
|
</p>
|
||
|
</dd>
|
||
|
<dt><code>-return-child-result</code></dt>
|
||
|
<dd><a name="index-_002d_002dreturn_002dchild_002dresult"></a>
|
||
|
<p>The return code from <small>GDB</small> will be the return code from the child
|
||
|
process (the process being debugged), with the following exceptions:
|
||
|
</p>
|
||
|
<ul>
|
||
|
<li> <small>GDB</small> exits abnormally. E.g., due to an incorrect argument or an
|
||
|
internal error. In this case the exit code is the same as it would have been
|
||
|
without ‘<samp>-return-child-result</samp>’.
|
||
|
</li><li> The user quits with an explicit value. E.g., ‘<samp>quit 1</samp>’.
|
||
|
</li><li> The child process never runs, or is not allowed to terminate, in which case
|
||
|
the exit code will be -1.
|
||
|
</li></ul>
|
||
|
|
||
|
<p>This option is useful in conjunction with ‘<samp>-batch</samp>’ or ‘<samp>-batch-silent</samp>’,
|
||
|
when <small>GDB</small> is being used as a remote program loader or simulator
|
||
|
interface.
|
||
|
</p>
|
||
|
</dd>
|
||
|
<dt><code>-nowindows</code></dt>
|
||
|
<dt><code>-nw</code></dt>
|
||
|
<dd><a name="index-_002d_002dnowindows"></a>
|
||
|
<a name="index-_002dnw"></a>
|
||
|
<p>“No windows”. If <small>GDB</small> comes with a graphical user interface
|
||
|
(GUI) built in, then this option tells <small>GDB</small> to only use the command-line
|
||
|
interface. If no GUI is available, this option has no effect.
|
||
|
</p>
|
||
|
</dd>
|
||
|
<dt><code>-windows</code></dt>
|
||
|
<dt><code>-w</code></dt>
|
||
|
<dd><a name="index-_002d_002dwindows"></a>
|
||
|
<a name="index-_002dw"></a>
|
||
|
<p>If <small>GDB</small> includes a GUI, then this option requires it to be
|
||
|
used if possible.
|
||
|
</p>
|
||
|
</dd>
|
||
|
<dt><code>-cd <var>directory</var></code></dt>
|
||
|
<dd><a name="index-_002d_002dcd"></a>
|
||
|
<p>Run <small>GDB</small> using <var>directory</var> as its working directory,
|
||
|
instead of the current directory.
|
||
|
</p>
|
||
|
</dd>
|
||
|
<dt><code>-data-directory <var>directory</var></code></dt>
|
||
|
<dt><code>-D <var>directory</var></code></dt>
|
||
|
<dd><a name="index-_002d_002ddata_002ddirectory"></a>
|
||
|
<a name="index-_002dD"></a>
|
||
|
<p>Run <small>GDB</small> using <var>directory</var> as its data directory.
|
||
|
The data directory is where <small>GDB</small> searches for its
|
||
|
auxiliary files. See <a href="Data-Files.html#Data-Files">Data Files</a>.
|
||
|
</p>
|
||
|
</dd>
|
||
|
<dt><code>-fullname</code></dt>
|
||
|
<dt><code>-f</code></dt>
|
||
|
<dd><a name="index-_002d_002dfullname"></a>
|
||
|
<a name="index-_002df"></a>
|
||
|
<p><small>GNU</small> Emacs sets this option when it runs <small>GDB</small> as a
|
||
|
subprocess. It tells <small>GDB</small> 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 ‘<samp>\032</samp>’ characters, followed by
|
||
|
the file name, line number and character position separated by colons,
|
||
|
and a newline. The Emacs-to-<small>GDB</small> interface program uses the two
|
||
|
‘<samp>\032</samp>’ characters as a signal to display the source code for the
|
||
|
frame.
|
||
|
</p>
|
||
|
</dd>
|
||
|
<dt><code>-annotate <var>level</var></code></dt>
|
||
|
<dd><a name="index-_002d_002dannotate"></a>
|
||
|
<p>This option sets the <em>annotation level</em> inside <small>GDB</small>. Its
|
||
|
effect is identical to using ‘<samp>set annotate <var>level</var></samp>’
|
||
|
(see <a href="Annotations.html#Annotations">Annotations</a>). The annotation <var>level</var> controls how much
|
||
|
information <small>GDB</small> prints 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 <small>GDB</small> is run as a subprocess of
|
||
|
<small>GNU</small> Emacs, level 3 is the maximum annotation suitable for programs
|
||
|
that control <small>GDB</small>, and level 2 has been deprecated.
|
||
|
</p>
|
||
|
<p>The annotation mechanism has largely been superseded by <small>GDB/MI</small>
|
||
|
(see <a href="GDB_002fMI.html#GDB_002fMI">GDB/MI</a>).
|
||
|
</p>
|
||
|
</dd>
|
||
|
<dt><code>--args</code></dt>
|
||
|
<dd><a name="index-_002d_002dargs"></a>
|
||
|
<p>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.
|
||
|
</p>
|
||
|
</dd>
|
||
|
<dt><code>-baud <var>bps</var></code></dt>
|
||
|
<dt><code>-b <var>bps</var></code></dt>
|
||
|
<dd><a name="index-_002d_002dbaud"></a>
|
||
|
<a name="index-_002db"></a>
|
||
|
<p>Set the line speed (baud rate or bits per second) of any serial
|
||
|
interface used by <small>GDB</small> for remote debugging.
|
||
|
</p>
|
||
|
</dd>
|
||
|
<dt><code>-l <var>timeout</var></code></dt>
|
||
|
<dd><a name="index-_002dl"></a>
|
||
|
<p>Set the timeout (in seconds) of any communication used by <small>GDB</small>
|
||
|
for remote debugging.
|
||
|
</p>
|
||
|
</dd>
|
||
|
<dt><code>-tty <var>device</var></code></dt>
|
||
|
<dt><code>-t <var>device</var></code></dt>
|
||
|
<dd><a name="index-_002d_002dtty"></a>
|
||
|
<a name="index-_002dt"></a>
|
||
|
<p>Run using <var>device</var> for your program’s standard input and output.
|
||
|
</p>
|
||
|
</dd>
|
||
|
<dt><code>-tui</code></dt>
|
||
|
<dd><a name="index-_002d_002dtui"></a>
|
||
|
<p>Activate the <em>Text User Interface</em> when starting. The Text User
|
||
|
Interface manages several text windows on the terminal, showing
|
||
|
source, assembly, registers and <small>GDB</small> command outputs
|
||
|
(see <a href="TUI.html#TUI"><small>GDB</small> Text User Interface</a>). Do not use this
|
||
|
option if you run <small>GDB</small> from Emacs (see <a href="Emacs.html#Emacs">Using <small>GDB</small> under <small>GNU</small> Emacs</a>).
|
||
|
</p>
|
||
|
</dd>
|
||
|
<dt><code>-interpreter <var>interp</var></code></dt>
|
||
|
<dd><a name="index-_002d_002dinterpreter"></a>
|
||
|
<p>Use the interpreter <var>interp</var> for interface with the controlling
|
||
|
program or device. This option is meant to be set by programs which
|
||
|
communicate with <small>GDB</small> using it as a back end.
|
||
|
See <a href="Interpreters.html#Interpreters">Command Interpreters</a>.
|
||
|
</p>
|
||
|
<p>‘<samp>--interpreter=mi</samp>’ (or ‘<samp>--interpreter=mi2</samp>’) causes
|
||
|
<small>GDB</small> to use the <em><small>GDB/MI</small> interface</em> (see <a href="GDB_002fMI.html#GDB_002fMI">The <small>GDB/MI</small> Interface</a>) included since <small>GDB</small> version 6.0. The
|
||
|
previous <small>GDB/MI</small> interface, included in <small>GDB</small> version 5.3 and
|
||
|
selected with ‘<samp>--interpreter=mi1</samp>’, is deprecated. Earlier
|
||
|
<small>GDB/MI</small> interfaces are no longer supported.
|
||
|
</p>
|
||
|
</dd>
|
||
|
<dt><code>-write</code></dt>
|
||
|
<dd><a name="index-_002d_002dwrite"></a>
|
||
|
<p>Open the executable and core files for both reading and writing. This
|
||
|
is equivalent to the ‘<samp>set write on</samp>’ command inside <small>GDB</small>
|
||
|
(see <a href="Patching.html#Patching">Patching</a>).
|
||
|
</p>
|
||
|
</dd>
|
||
|
<dt><code>-statistics</code></dt>
|
||
|
<dd><a name="index-_002d_002dstatistics"></a>
|
||
|
<p>This option causes <small>GDB</small> to print statistics about time and
|
||
|
memory usage after it completes each command and returns to the prompt.
|
||
|
</p>
|
||
|
</dd>
|
||
|
<dt><code>-version</code></dt>
|
||
|
<dd><a name="index-_002d_002dversion"></a>
|
||
|
<p>This option causes <small>GDB</small> to print its version number and
|
||
|
no-warranty blurb, and exit.
|
||
|
</p>
|
||
|
</dd>
|
||
|
<dt><code>-configuration</code></dt>
|
||
|
<dd><a name="index-_002d_002dconfiguration"></a>
|
||
|
<p>This option causes <small>GDB</small> to print details about its build-time
|
||
|
configuration parameters, and then exit. These details can be
|
||
|
important when reporting <small>GDB</small> bugs (see <a href="GDB-Bugs.html#GDB-Bugs">GDB Bugs</a>).
|
||
|
</p>
|
||
|
</dd>
|
||
|
</dl>
|
||
|
|
||
|
<hr>
|
||
|
<div class="header">
|
||
|
<p>
|
||
|
Next: <a href="Startup.html#Startup" accesskey="n" rel="next">Startup</a>, Previous: <a href="File-Options.html#File-Options" accesskey="p" rel="prev">File Options</a>, Up: <a href="Invoking-GDB.html#Invoking-GDB" accesskey="u" rel="up">Invoking GDB</a> [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Concept-Index.html#Concept-Index" title="Index" rel="index">Index</a>]</p>
|
||
|
</div>
|
||
|
|
||
|
|
||
|
|
||
|
</body>
|
||
|
</html>
|