diff options
author | Roland Pesch <pesch@cygnus> | 1991-05-23 00:14:26 +0000 |
---|---|---|
committer | Roland Pesch <pesch@cygnus> | 1991-05-23 00:14:26 +0000 |
commit | 9bcc06ef1645086025bd7a5ecbe423f7fc1d6fc8 (patch) | |
tree | e0110d4fdb8b91b4e49dbd9029e42a458ca02dfc /gdb/doc/gdb.top-m4 | |
parent | 5ad1d8304204d3e81726319bf7262e571156f9da (diff) | |
download | gdb-9bcc06ef1645086025bd7a5ecbe423f7fc1d6fc8.zip gdb-9bcc06ef1645086025bd7a5ecbe423f7fc1d6fc8.tar.gz gdb-9bcc06ef1645086025bd7a5ecbe423f7fc1d6fc8.tar.bz2 |
*** empty log message ***
Diffstat (limited to 'gdb/doc/gdb.top-m4')
-rwxr-xr-x | gdb/doc/gdb.top-m4 | 311 |
1 files changed, 311 insertions, 0 deletions
diff --git a/gdb/doc/gdb.top-m4 b/gdb/doc/gdb.top-m4 new file mode 100755 index 0000000..de2354f --- /dev/null +++ b/gdb/doc/gdb.top-m4 @@ -0,0 +1,311 @@ +_dnl__ -*- Texinfo -*- +_dnl__ Copyright (c) 1988 1989 1990 1991 Free Software Foundation, Inc. +_dnl__ This file is part of the source for the GDB manual. +_dnl__ $Id$ +@c +@syncodeindex ky cp +@c FOR UPDATES LEADING TO THIS DRAFT, GDB CHANGELOG CONSULTED BETWEEN: +@c Sun May 19 05:36:59 1991 John Gilmore (gnu at cygint.cygnus.com) +@c Sat Dec 22 02:51:40 1990 John Gilmore (gnu at cygint) +@ifinfo +This file documents the GNU debugger _GDBN__. + +Copyright (C) 1988, 1989, 1990, 1991 Free Software Foundation, Inc. + +Permission is granted to make and distribute verbatim copies of +this manual provided the copyright notice and this permission notice +are preserved on all copies. + +@ignore +Permission is granted to process this file through TeX and print the +results, provided the printed document carries copying permission +notice identical to this one except for the removal of this paragraph +(this paragraph not being relevant to the printed manual). + +@end ignore +Permission is granted to copy and distribute modified versions of this +manual under the conditions for verbatim copying, provided also that the +section entitled ``GNU General Public License'' is included exactly as +in the original, and provided that the entire resulting derived work is +distributed under the terms of a permission notice identical to this +one. + +Permission is granted to copy and distribute translations of this manual +into another language, under the above conditions for modified versions, +except that the section entitled ``GNU General Public License'' may be +included in a translation approved by the Free Software Foundation +instead of in the original English. +@end ifinfo +@smallbook +@setchapternewpage odd +_if__(_GENERIC__) +@settitle Using _GDBN__ (v4.0) +_fi__(_GENERIC__) +_if__(!_GENERIC__) +@settitle Using _GDBN__ v4.0 (_HOST__) +_fi__(!_GENERIC__) +@iftex +@c @finalout +@end iftex +@titlepage +@title{Using _GDBN__} +@subtitle{A Guide to the GNU Source-Level Debugger} +_if__(!_GENERIC__) +@subtitle{On _HOST__ Systems} +_fi__(!_GENERIC__) +@sp 1 +@c Maybe crank this up to "Fourth Edition" when released at FSF +@c @subtitle Third Edition---_GDBN__ version 4.0 +@subtitle _GDBN__ version 4.0 +@subtitle May 1991 +@author{Richard M. Stallman@qquad @hfill Free Software Foundation} +@author{Roland H. Pesch@qquad @hfill Cygnus Support} +@page + +@tex +\def\$#1${{#1}} % Kluge: collect RCS revision info without $...$ +\xdef\manvers{\$Revision$} % For use in headers, footers too +{\parskip=0pt +\hfill rms\@ai.mit.edu, pesch\@cygnus.com\par +\hfill {\it Using _GDBN__}, \manvers\par +\hfill \TeX{}info \texinfoversion\par +} +@end tex + +@vskip 0pt plus 1filll +Copyright @copyright{} 1988, 1989, 1990, 1991 Free Software Foundation, Inc. + +Permission is granted to make and distribute verbatim copies of +this manual provided the copyright notice and this permission notice +are preserved on all copies. + +Permission is granted to copy and distribute modified versions of this +manual under the conditions for verbatim copying, provided also that the +section entitled ``GNU General Public License'' is included exactly as +in the original, and provided that the entire resulting derived work is +distributed under the terms of a permission notice identical to this +one. + +Permission is granted to copy and distribute translations of this manual +into another language, under the above conditions for modified versions, +except that the section entitled ``GNU General Public License'' may be +included in a translation approved by the Free Software Foundation +instead of in the original English. +@end titlepage +@page + +@node Top, Summary, (dir), (dir) +@ifinfo +This file describes version 4.0 of GDB, the GNU symbolic debugger. +@end ifinfo + +@menu +* Summary:: Summary of _GDBN__ +* New Features:: New Features in _GDBN__ version 4.0 +* Sample Session:: A Sample _GDBN__ Session +* Invocation:: Getting In and Out of _GDBN__ +* Commands:: +* Running:: Running Programs Under _GDBN__ +* Stopping:: Stopping and Continuing +* Stack:: Examining the Stack +* Source:: Examining Source Files +* Data:: Examining Data +* Symbols:: Examining the Symbol Table +* Altering:: Altering Execution +* _GDBN__ Files:: +* Targets:: Specifying a Debugging Target +* Controlling _GDBN__:: Controlling _GDBN__ +* Sequences:: Canned Sequences of Commands +* Emacs:: Using _GDBN__ under GNU Emacs +* _GDBN__ Bugs:: Reporting Bugs in _GDBN__ +* Renamed Commands:: +* Installing _GDBN__:: Installing _GDBN__ +* Copying:: GNU GENERAL PUBLIC LICENSE +* Index:: Index +@end menu + +@node Summary, New Features, Top, Top +@unnumbered Summary of _GDBN__ + +The purpose of a debugger such as _GDBN__ is to allow you to see what is +going on ``inside'' another program while it executes---or what another +program was doing at the moment it crashed. + +_GDBN__ can do four main kinds of things (plus other things in support of +these) to help you catch bugs in the act: + +@itemize @bullet +@item +Start your program, specifying anything that might affect its behavior. + +@item +Make your program stop on specified conditions. + +@item +Examine what has happened, when your program has stopped. + +@item +Change things in your program, so you can experiment with correcting the +effects of one bug and go on to learn about another. +@end itemize + +_GDBN__ can be used to debug programs written in C and C++. Pascal support +is being implemented, and Fortran support will be added when a GNU +Fortran compiler is ready. + +@menu +* Free Software:: Free Software +* Contributors:: Contributors to GDB +@end menu + +@node Free Software, Contributors, Summary, Summary +@unnumberedsec Free Software +_GDBN__ is @dfn{free software}, protected by the GNU General Public License (GPL). +The GPL gives you the freedom to copy or adapt a licensed +program---but every person getting a copy also gets with it the +freedom to modify that copy (which means that they must get access to +the source code), and the freedom to distribute further copies. +Typical software companies use copyrights to limit your freedoms; the +Free Software Foundation uses the GPL to preserve these freedoms. + +Fundamentally, the General Public License is a license which says that +you have these freedoms and that you can't take these freedoms away +from anyone else. + +@c FIXME: (passim) go through all xrefs, expanding to use text headings +For full details, @pxref{Copying}. +@node Contributors, , Free Software, Summary +@unnumberedsec Contributors to GDB + +Richard Stallman was the original author of GDB, as with many GNU +programs. Many others have contributed to its development. This +section attempts to credit major contributors. One of the virtues of +free software is that everyone is free to contribute to it; with +regret, we cannot actually acknowledge everyone here. The file +@file{ChangeLog} in the GDB distribution approximates a blow-by-blow +account. + +Changes much prior to version 2.0 are lost in the mists of time. + +@quotation +@emph{Plea:} Additions to this section are particularly welcome. If you +or your friends (or enemies; let's be evenhanded) have been unfairly +omitted from this list, we would like to add your names! +@end quotation + +So that they may not regard their long labor as thankless, we +particularly thank those who shepherded GDB through major releases: +John Gilmore (release 4.0); Jim Kingdon (releases 3.9, 3.5, 3.4, 3.3); +and Randy Smith (releases 3.2, 3.1, 3.0). As major maintainer of GDB +for some period, each contributed significantly to the structure, +stability, and capabilities of the entire debugger. + +Richard Stallman, assisted at various times by Pete TerMaat, Chris +Hanson, and Richard Mlynarik, handled releases through 2.8. + +Michael Tiemann is the author of most of the GNU C++ support in GDB, +with significant additional contributions from Per Bothner. James +Clark wrote the GNU C++ demangler. Early work on C++ was by Peter +TerMaat (who also did much general update work leading to release 3.0). + +GDB 4.0 uses the BFD subroutine library to examine multiple +object-file formats; BFD was a joint project of V. Gumby +Henkel-Wallace, Rich Pixley, Steve Chamberlain, and John Gilmore. + +David Johnson wrote the original COFF support; Pace Willison did +the original support for encapsulated COFF. + +Adam de Boor and Bradley Davis contributed the ISI Optimum V support. +Per Bothner, Noboyuki Hikichi, and Alessandro Forin contributed MIPS +support. Jean-Daniel Fekete contributed Sun 386i support. Chris +Hanson improved the HP9000 support. Noboyuki Hikichi and Tomoyuki +Hasei contributed Sony/News OS 3 support. David Johnson contributed +Encore Umax support. Jyrki Kuoppala contributed Altos 3068 support. +Keith Packard contributed NS32K support. Doug Rabson contributed +Acorn Risc Machine support. Chris Smith contributed Convex support +(and Fortran debugging). Jonathan Stone contributed Pyramid support. +Michael Tiemann contributed SPARC support. Tim Tucker contributed +support for the Gould NP1 and Gould Powernode. Pace Willison +contributed Intel 386 support. Jay Vosburgh contributed Symmetry +support. + +Rich Schaefer helped with support of SunOS shared libraries. + +Jay Fenlason and Roland McGrath ensured that GDB and GAS agree about +several machine instruction sets. + +Patrick Duval, Ted Goldstein, Vikram Koka and Glenn Engel helped +develop remote debugging. Intel Corporation and Wind River Systems +contributed remote debugging modules for their products. + +Brian Fox is the author of the readline libraries providing +command-line editing and command history. + +@node New Features, Sample Session, Summary, Top +@unnumbered New Features since _GDBN__ version 3.5 + +@table @emph +@item Targets +Using the new command @code{target}, you can select at runtime whether +you are debugging local files, local processes, standalone systems over +a serial port, realtime systems over a TCP/IP connection, etc. +Internally, _GDBN__ now uses a function vector to mediate access to +different targets; if you need to add your own support for a remote +protocol, this makes it much easier. + +@item Watchpoints +_GDBN__ now sports watchpoints as well as breakpoints. You can use a +watchpoint to stop execution whenever the value of an expression +changes, without having to predict a particular place in your program +where this may happen. + +@item Object Code Formats +_GDBN__ uses a new scheme called Binary File Descriptors (BFD) to permit +it to switch dynamically, without reconfiguration or recompilation, +between different object-file formats. Formats currently supported are +COFF, a.out, and the Intel 960 b.out; files may be read as .o's, archive +libraries, or core dumps. BFD is available as a subroutine library so +that other programs may take advantage of it, and the other GNU binary +utilities are being converted to use it. + +@item Configuration +Compile-time configuration (to select a particular architecture and +operating system) is much easier. The script @code{config.gdb} now +handles specification of separate host and target configurations. + +@item Interaction +The user interface to _GDBN__'s control variables has been simplified +and consolidated in two commands, @code{set} and @code{show}. Output +lines are now broken at readable places, rather than overflowing onto +the next line. You can suppress output of machine-level addresses, +displaying only source language information. + + +@item Source Language +_GDBN__ now has limited support for C++ exception handling: _GDBN__ can +break when an exception is raised, before the stack is peeled back to +the exception handler's context. + +@item Command Rationalization +Many _GDBN__ commands have been renamed to make them easier to remember +and use. In particular, the subcommands of @code{info} and +@code{show}/@code{set} are grouped to make the former refer to the state +of your program, and the latter refer to the state of _GDBN__ itself. +@xref{Renamed Commands}, for details on what commands were renamed. + +@item Ports +_GDBN__ has been ported to the following new architectures: AT&T 3b1, +Acorn RISC machine, HP300 running HPUX, big- and little-endian MIPS +machines, Motorola 88k, Sun 386i, and Sun 3 running SunOS 4. In +addition, the following are supported as targets only: AMD 29k, Intel +960, and Wind River's VxWorks. + +@item Shared Libraries +_GDBN__ 4.0 supports SunOS shared libraries. + +@item Work in Progress +Kernel debugging for BSD and Mach systems; Tahoe and HPPA architecture +support. + +@end table + |