| \input texinfo @c -*-texinfo-*- |
| @c Copyright 1988 1989 1990 1991 1992 1993 1994 Free Software Foundation, Inc. |
| @c |
| @c %**start of header |
| @c makeinfo ignores cmds prev to setfilename, so its arg cannot make use |
| @c of @set vars. However, you can override filename with makeinfo -o. |
| @setfilename gdb.info |
| @c |
| @include gdb-cfg.texi |
| @c |
| @ifset GENERIC |
| @settitle Using the Graphical Interface to @value{GDBN} |
| @end ifset |
| @ifclear GENERIC |
| @settitle Using the Graphical Interface to @value{GDBN} (@value{TARGET}) |
| @end ifclear |
| @setchapternewpage odd |
| @c %**end of header |
| |
| @c Since this interface is so new, there is much missing still. |
| @c Desired but unimplemented features are commented out. |
| |
| @iftex |
| @c @smallbook |
| @c @cropmarks |
| @end iftex |
| |
| @finalout |
| @syncodeindex ky cp |
| |
| @c readline appendices use @vindex |
| @syncodeindex vr cp |
| |
| @c !!set GDB manual's edition---not the same as GDB version! |
| @set EDITION 4.13 |
| |
| @c !!set GDB manual's revision date |
| @set DATE January 1995 |
| |
| @c THIS MANUAL REQUIRES TEXINFO-2 macros and info-makers to format properly. |
| |
| @ifinfo |
| @c This is a dir.info fragment to support semi-automated addition of |
| @c manuals to an info tree. zoo@cygnus.com is developing this facility. |
| @format |
| START-INFO-DIR-ENTRY |
| * Gdb: (gdb). The GNU debugger. |
| END-INFO-DIR-ENTRY |
| @end format |
| @end ifinfo |
| @c |
| @c |
| @ifinfo |
| This file documents the graphical interface to the GNU debugger @value{GDBN}. |
| |
| |
| This is Edition @value{EDITION}, @value{DATE}, |
| of @cite{Using the Graphical Interface to @value{GDBN}} |
| for GDB Version @value{GDBVN}. |
| |
| Copyright (C) 1994, 1995 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 |
| 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. |
| @end ifinfo |
| |
| @titlepage |
| @title Using the Graphical Interface to @value{GDBN} |
| @subtitle The GNU Source-Level Debugger |
| @ifclear GENERIC |
| @subtitle (@value{TARGET}) |
| @end ifclear |
| @sp 1 |
| @subtitle Edition @value{EDITION}, for @value{GDBN} version @value{GDBVN} |
| @subtitle @value{DATE} |
| @author Stanley T. Shebs |
| @page |
| @tex |
| {\parskip=0pt |
| \hfill (Send bugs and comments on @value{GDBN} to bug-gdb\@prep.ai.mit.edu.)\par |
| \hfill {\it Debugging with @value{GDBN}}\par |
| \hfill \TeX{}info \texinfoversion\par |
| \hfill doc\@cygnus.com\par |
| } |
| @end tex |
| |
| @vskip 0pt plus 1filll |
| Copyright @copyright{} 1994, 1995 Free Software Foundation, Inc. |
| @sp 2 |
| |
| 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 |
| 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. |
| @end titlepage |
| @page |
| |
| @ifinfo |
| @node Top |
| @top Using the Graphical Interface to @value{GDBN} |
| @end ifinfo |
| |
| This file describes a graphical interface to @value{GDBN}, |
| the GNU symbolic debugger. |
| |
| @node Invocation |
| @chapter Starting up GUI @value{GDBN} |
| |
| If @value{GDBN} has been configured to use the graphical interface, |
| then you will get the interface automatically upon startup. |
| |
| When running as a Unix program and using the X11-based interface, |
| you must of course be using an X server and/or workstation, |
| and your @code{DISPLAY} environment variable must be set correctly. |
| If either of these is not true, then @value{GDBN} will still start up, |
| but will use only the traditional command interface. |
| |
| The exact layout and appearance of the windows will depend on the host |
| system type. For instance, GDB under Windows will display its windows |
| inside a larger window, while under Unix/X, each window is a separate |
| toplevel window. However, general behavior and layout is consistent |
| across all platforms; omissions or restrictions on particular platforms, |
| if not documented as unavoidable, should be considered bugs and |
| reported. |
| |
| All GDB windows have a common structure. Each window has an associated |
| menu bar, which may be at the top of the window or perhaps elsewhere. |
| Some of the menus and menu items in the menu bar are common to all GDB |
| windows, while others are specific to particular types of windows. |
| Below the menu bar is the working data area of the window. If the data |
| is too large to display all at once, the data area will have scroll bars |
| on its right and bottom sides. Below the data area are two optional |
| features; a status/data line, and a button box. |
| |
| @section Menus |
| |
| @subsection File Menu |
| |
| The standard file menu provides operations that affect the overall state |
| of GDB, mainly file operations, but other things as well. |
| |
| About GDB... |
| |
| Displays the startup window for GDB. |
| |
| File... |
| |
| Lets you set the combined executable and symbol file that GDB will use. |
| (Like "file".) |
| |
| Target... |
| |
| Brings up a dialog that you can use to connect GDB to a target program. |
| The dialog is described in more depth later. |
| (Like "target".) |
| |
| Edit... |
| |
| Starts up an editor to modify the source file being displayed. |
| |
| Exec File... |
| |
| Lets you set the executable file that GDB will use. |
| (Like "exec-file".) |
| |
| Symbol File... |
| |
| Lets you set the symbol file that GDB will use. |
| (Like "symbol-file".) |
| |
| Add Symbol File... |
| |
| Lets you add additional symbol files. |
| (Like "add-symbol-file".) |
| |
| Core File... |
| |
| Lets you set the core file that GDB will use. |
| (Like "core-file".) |
| |
| Shared Libraries... |
| |
| (Like "sharedlibrary".) |
| |
| Quit |
| |
| quits GDB. |
| (Like @samp{quit}.) |
| |
| |
| @c @subsection Commands Menu |
| |
| @c The commands menu consists of items that let you run and control the program being |
| @c debugged. |
| @c |
| @c Run |
| @c |
| @c Step |
| @c |
| @c Next |
| @c |
| @c Finish |
| @c |
| @c Stepi |
| @c |
| @c Nexti |
| |
| @subsection Windows Menu |
| |
| The windows menu allows access to all the windows available in GDB. |
| The first part of the menu lists all of the predefined individual windows. |
| If the window exists already, its item will be marked as such; |
| selecting the item will cause the window to be put in front if it is |
| obscured. If it does not exist, then it will be created. |
| |
| The second part of the menu lists additional windows that you may have |
| created, such as source windows or variable displays. |
| |
| Command |
| --- |
| Source |
| Assembly |
| --- |
| Registers |
| Variables |
| --- |
| Files |
| @c --- |
| @c <extra windows> |
| |
| @subsection View Menu |
| |
| All windows have a view menu, but its contents are highly specific to |
| window type. For instance, a source window will have a view menu item |
| to control the display of line numbers, but a register window will instead |
| have an option to choose the radix in which to display register contents. |
| You can find the full description of view options with each window type. |
| |
| @subsection Help Menu |
| |
| The help menu includes access to GDB's online help. |
| |
| @section Windows |
| |
| @subsection Command Window |
| |
| The command window provides access to the standard GDB command |
| interpreter. In nearly all cases, commands typed into this window |
| will behave exactly as for a non-windowing GDB. |
| |
| Note that not all changes to GDB will be reflected in this window. For instance, |
| if you were to type a "step" command, then click on the "step" menu item in |
| the source window, then go back, and type another "step" command, the command |
| buffer will only show two steps, when you have actually done three. GDB will |
| put a "..." into the command buffer when operations in other windows are done, |
| as a reminder that the command buffer is incomplete. |
| |
| @c Also note that as a side effect of having the interface and possibly an |
| @c associated scripting language built in, additional commands may be |
| @c available. For instance, if tcl is in GDB, the command ``tcl <tcl code>'' |
| @c will be available. |
| |
| The command window has no status line or button box. |
| |
| @subsection Files Window |
| |
| The files window lists all of the files that were used to build the |
| executable. |
| |
| Clicking on the xxx in the left margin expands/contracts the display of |
| included files and symbols defined by the file. |
| |
| The View menu for this window includes the following items: |
| Name/Full Pathname |
| @c Sort by Name |
| @c Sort by Section&Offset |
| @c Show All Included Files |
| @c Included File Indentation... |
| |
| @subsection Source Window |
| |
| A source window displays a single file of source code. |
| |
| The left margin includes an indicator for the current PC, breakpoints and potential breakpoints, |
| and (optionally) line numbers. |
| |
| The View menu for this window includes the following items: |
| Show Line Numbers |
| Show Breakdots |
| @c Jump to PC (if pc changes, scroll back so PC is centered) |
| @c Tab... (set tabbing) |
| |
| @section Extensions |
| |
| [description of gdbtk details] |
| |
| @c |
| @c GDBTK Interface Design |
| @c |
| @c This is the working document describing the design of the GDBTK |
| @c interface. Note that overall layout applies only to the default setup; |
| @c it is expected that debugger users will be able to customize extensively. |
| @c |
| @c Default Startup |
| @c |
| @c One source window, shows source as in "list main", does *not* set a |
| @c break at main or run or anything. No current PC indicator, only put |
| @c in when something runs. |
| @c |
| @c Source Window |
| @c |
| @c For native, "run" button is always the same, for cross, it's actually |
| @c a "target" button that pops up appropriate dialog to get connected. |
| @c Once remote target is active, change button to "run". |
| @c |
| @c Be able to toggle assembly interleaved between source. |
| @c |
| @c Command Window |
| @c |
| @c Is an *optional* window. |
| @c |
| @c Behavior mimics command-line GDB running in an Emacs buffer as much |
| @c as possible. |
| @c |
| @c Assembly Window |
| @c |
| @c Be able to toggle source interleaved between assembly. |
| @c |
| @c Target Info Window |
| @c |
| @c Contents similar to "info target". |
| @c |
| @c Should expand into process and thread info also. |
| @c |
| @c File Info Window |
| @c |
| @c Contents similar to "info files". |
| @c |
| @c Include data shown in "info sources" as well as "info files". |
| @c |
| @c Register Info Window |
| @c |
| @c Contents similar to "info registers". |
| @c |
| @c Add view option(s) for classes of registers. |
| @c |
| @c Stack Info Window |
| @c |
| @c Combines backtrace, frame, and local var displays. |
| @c |
| @c Signals Dialog |
| @c |
| @c Includes all signals whose handling may be controlled, plus |
| @c checkboxes for what to do with each. |
| @c |
| @c Settings Dialog(s) |
| @c |
| @c Include all variables that can be "set" and "show"n. |
| @c |
| @c General Principles |
| @c |
| @c All windows should have a menu that allows access to other windows. |
| @c Selection of item either brings up for first time or brings to front. |
| @c |
| @c All windows should have a "view" menu that controls formatting |
| @c options for that window. |
| @c |
| @c Windows should usually be scrollable. Windows that display largish |
| @c horizontal things should be horizontal and vertical scrollbars. |
| @c |
| @c To do standard modification, add commands or tcl code to .gdbtkinit. |
| @c |
| @c Be able to record window positions so they come up in the same way |
| @c the next time. Could scribble on .gdbtkinit perhaps, or else an |
| @c aux file that can be sourced by .gdbtkinit. |
| |
| @section How to Build |
| |
| If GDB is configured with --enable-gdbtk, then upon startup, it will |
| open windows. |
| |
| @node Index |
| @unnumbered Index |
| |
| @printindex cp |
| |
| @contents |
| @bye |