XXGDB(1.08) MISC. REFERENCE MANUAL PAGES XXGDB(1.08) NAME xxgdb - X window system interface to the gdb debugger. SYNOPSIS xxgdb [ -_t_o_o_l_k_i_t_o_p_t_i_o_n ... ] [-_x_x_g_d_b_o_p_t_i_o_n ... ] [-_g_d_b_o_p_t_i_o_n ... ] [_o_b_j_f_i_l_e [ _c_o_r_e_f_i_l_e ]] DESCRIPTION _X_x_g_d_b is a graphical user interface to the _g_d_b debugger under the X Window System. It provides visual feedback and mouse input for the user to control program execution through breakpoints, to examine and traverse the function call stack, to display values of variables and data struc- tures, and to browse source files and functions. _X_x_g_d_b allows initial gdb commands stored in the file ._g_d_b_i_n_i_t to be executed immediately after the symbolic information is read. If ._g_d_b_i_n_i_t does not exist in the current directory, the user's home directory is searched (~/._g_d_b_i_n_i_t). Option -nx can be used to prevent xxgdb from executing this file. _O_b_j_f_i_l_e is an object file produced by a compiler with the appropriate option (-g) specified to produce symbol table information for gdb. If a file named _c_o_r_e exists in the current directory or a _c_o_r_e_f_i_l_e is specified, _x_x_g_d_b can be used to examine the state of the program when the core dump occurred. The name of the debugger invoked by _x_x_g_d_b is, by default, gdb, but it can be overridden with the environment variable XXGDB_DEBUGGER or with the db_name option. OPTIONS _X_x_g_d_b accepts all of the standard X Toolkit command line options (see _X(1)), and all the gdb options (see _g_d_b(1)), plus the following xxgdb specific options: -db_name Specify the name of the debugger to override the default "gdb" -db_prompt Specify to xxgdb what is the debugger prompt. The default is to expect the prompt to be the name of the debugger enclosed in parenthesis followed by a space (eg, "(gdb) "). -nx Do not execute .gdbinit file. -bigicon X Version 11 Last change: November 1993 1 XXGDB(1.08) MISC. REFERENCE MANUAL PAGES XXGDB(1.08) Uses a 64x64 icon instead of the default 48x48 icon. SUBWINDOWS _X_x_g_d_b consists of the following subwindows: File Window Display the full pathname of the file displayed in the source window, and the line number of the caret. Source Window Display the contents of a source file. Message Window Display the execution status and error messages of _x_x_g_d_b . Command Window Provide a list of the common gdb com- mands which are invoked by simply click- ing the LEFT mouse button. Dialogue Window Provide a typing interface to gdb. Display Window Provide a window for displaying vari- ables each time execution stops. Popup Windows Provide windows for displaying variables (see "Displaying C Data Structures" below). The relative sizes of the source window, command window, and the dialogue window can be adjusted by dragging the grip (a small square near the right edge of a horizontal border) with the LEFT mouse button down. SELECTION Text selection in the source window is modified to make it easier to select C expressions. LEFT mouse button down selects a C expression by highlighting it in reverse-video. LEFT mouse button down also positions the caret and updates the line label accordingly. C expression selection is based on the resource _d_e_l_i_m_i_t_e_r_s which determines the set of characters that delimits a C expression. (The default word selection behavior in the Athena text widget selects a word delimited by white spaces.) Text selection adjustment is possible by holding the LEFT mouse button down and dragging. A LEFT mouse button click with the SHIFT button down prints the value of the expression selected. SCROLLBAR Pressing the LEFT mouse button scrolls the text forward, whereas pressing the RIGHT mouse button scrolls the text X Version 11 Last change: November 1993 2 XXGDB(1.08) MISC. REFERENCE MANUAL PAGES XXGDB(1.08) backward. The amount of scrolling depends on the distance of the pointer button away from the top of the scrollbar. If the button is pressed at the top of the scrollbar, only one line of text is scrolled. If the button is pressed at the bottom of the scrollbar, one screenful of text is scrolled. Pressing the MIDDLE mouse button changes the thumb position of the scrollbar. Dragging the MIDDLE mouse button down moves the thumb along and changes the text displayed. COMMAND BUTTONS Execution Commands run Begin program execution. cont Continue execution from where it stopped. next Execute one source line, without stepping into any function call. step Execute one source line, stepping into a func- tion if the source line contains a function call. finish Continue execution until the selected procedure returns; the current procedure is used if none is selected. Breakpoint Commands break Stop program execution at the line or in the func- tion selected. To set a breakpoint in the pro- gram, place the caret at the start of the source line or on the function name and click the break button. A stop sign will appear next to the source line. tbreak Set a breakpoint enabled only for one stop. This is the same as the break button except the break- point is automatically disabled the first time it hit. delete Remove the breakpoint on the source line selected or the breakpoint number selected. show brkpts Show the current breakpoints (both active and inactive). Stack Commands stack Show a stack trace of the functions called. X Version 11 Last change: November 1993 3 XXGDB(1.08) MISC. REFERENCE MANUAL PAGES XXGDB(1.08) up Move up one level on the call stack. down Move down one level on the call stack. Data Display Commands print Print the value of a selected expression. (also see "Displaying C Data Structures" below) print * Print the value of the object the selected expres- sion is pointing to. (also see "Displaying C Data Structures" below) display Display the value of a selected expression in the display window, updating its value every time exe- cution stops. undisplay Stop displaying the value of the selected expres- sion in the display window. If the selected expression is a constant, it refers to the display number associated with an expression in the display window. args Print the arguments of the selected frame. show display Show the names of currently displayed expressions. .IP "locals" Print the local variables of the selected frame. stack Print a backtrace of the entire stack. Miscellaneous Commands search Pop up a search panel which allows both forward (>>) and reverse (<<) search of text strings in the source file. Hitting carriage return after entering the search string will begin a forward search and pop down the search panel. file Pop up a directory browser that allows the user to move up and down in the directory tree, to select a text file to be displayed, to select an executable file to debug, or to select a core file to debug. Directory entries are marked with a trailing slash (`/') and exe- cutables with a trailing asterisk (`*'). Filenames beginning with a dot (`.') or ending with a tilde (`~') are not listed in the menu. search Pop up a search panel which allows both forward (>>) X Version 11 Last change: November 1993 4 XXGDB(1.08) MISC. REFERENCE MANUAL PAGES XXGDB(1.08) and reverse (<<) search of text strings in the source file. Hitting carriage return after entering the search string will begin a forward search and pop down the search panel. yes Send 'y' (yes) to gdb. To be used when gdb requires a yes/no response. no Send 'n' (no) to gdb. To be used when gdb requires a yes/no response. quit Exit _x_x_g_d_b. Displaying C Data Structures _X_x_g_d_b provides some primitive support for graphically displaying C structures and the ability of following pointers. Pressing the RIGHT mouse button on the print (or print *) command button displays the value of the selected expression (or the value the selected expression is pointing to) in a popup. If the value is a pointer or a structure containing pointers, the user can examine the value of the object that pointer is pointing to by clicking the pointer value. This will create another popup that displays the object the pointer points to. Clicking the label of the popup pops down itself and all of its descendants. X DEFAULTS To change the default values of widget resources used in _x_x_g_d_b, you need to reference the widgets by name or by class. The widget hierarchies for the main window, the file menu, the search dialog box, and the popup data display used in xxgdb are shown as follows, with the name of the widget followed by the name of its class in parentheses: Main window: toplevel (ToplevelShell) vpane (Paned) fileWindow (Form) fileLabel (Label) lineLabel (Label) sourceForm (Form) sourceWindow (AsciiText) messageWindow (Label) commandWindow (Box) run (Command) cont (Command) next (Command) step (Command) finish (Command) break (Command) tbreak (Command) X Version 11 Last change: November 1993 5 XXGDB(1.08) MISC. REFERENCE MANUAL PAGES XXGDB(1.08) delete (Command) up (Command) down (Command) print (Command) print * (Command) display (Command) undisplay (Command) args (Command) locals (Command) stack (Command) search (Command) file (Command) show display (Command) show brkpts (Command) yes (Command) no (Command) quit (Command) dialogWindow (AsciiText) displayWindow (AsciiText) File menu: File Directory (TransientShell) popup (Paned) fileMenuLabel (Label) fileMenu (List) cancelButton (Command) Search dialog box: Search (TransientShell) searchPopup (Dialog) << (Command) >> (Command) DONE (Command) Data display popup: Data Popup (TransientShell) popup (Form) label (Label) dataDpyWindow (AsciiText) In addition to the standard X resources, _x_x_g_d_b uses the fol- lowing application-specific resources for user customiza- tion. The value in parentheses is the default value. bell If True, the bell is on. (True) displayWindow If True, the display window appears on start up. (False) delimiters The set of delimiters for word selection. (" X Version 11 Last change: November 1993 6 XXGDB(1.08) MISC. REFERENCE MANUAL PAGES XXGDB(1.08) !%^&*()+=~|;:{},/#