Using the graphical interface of debug

Using the graphical interface of debug

debug is a symbolic, source-level debugger with many capabilities, including control over multiple processes and threads, and evaluation of complex expressions in C or C++. When used via its graphical interface, the debugger displays its information in several different windows. Each window is composed of one or more panes, each pane providing a different type of information. Which panes are available in each different window is configurable by the user (see ``Configuration''). There are nine different types of panes:

The debugger's informational panes are arranged in a set of windows, as described by the configuration provided by the user. Each window set contains at least one instance of each of the debugger's panes (except for the Status pane, which is not required). If no user configuration is provided, the debugger arranges its panes into a set of six windows:

Each window set controls a subset of the processes and threads being debugged, and each thread or process belongs to exactly one window set. Multiple window sets can be created in any one debugging session. If you are debugging only one single-threaded process, you will not need more than one window set, but if you are debugging multiple threads or processes, you may wish to debug each thread or process in a separate window set. Window sets are created by the ``New Window Set'' option, which, in the default configuration, is in the ``File menu'' in the Source and Process windows.

NOTE: See ``Debugging multiple processes'' under ``Technical tips'' for more information.

Each window contains a menu bar providing access to a series of menus. The number and names of the menus in the menu bar and the contents of each menu are configurable by the user. The options available under each menu button provide commands to control the state of the processes and threads, options to change the information displayed, and more. See the sections for the individual buttons for details.

By default, the debugger arranges its available options into the following menus (not all menus are available in all windows):

Each window may also contain one or more button bars. Each Button Bar can contain multiple panels of buttons. To access different button panels, click SELECT on the Next Panel button (the first button in any Button Bar that contains multiple panels). Button Bars may be located at the top of the window (right under the menu buttons, in windows that do not have a ``Status pane'' or under the Status pane, in windows that have one) or at the bottom of the window, or at both the top and bottom of the window. The Button Bar contains a selection of buttons chosen from the other pulldown menus and provides a quick way to get at the most frequently used debugger commands. The contents and location of the Button Bar(s) for each window are configurable by the user both statically, through the normal configuration mechanism (see ``Configuration'') and dynamically, while the debugger is running (see ``Button Configuration'').

Finally, each pane may provide a popup menu of actions frequently executed from that pane. The popup menu is accessed by moving the pointer over the pane and clicking MENU. Whether or not a pane provides a popup menu, and which options are available from that menu, are completely configurable (see ``Configuration'').

You may resize any window. You may also redistribute the space within the window. To do that, click SELECT on the "sash" (a small square) appearing in the right hand border at the point where any two panes meet. By dragging the sash up or down, you increase or decrease the size of the two panes relative to each other. Note that there is no sash between the ``Status pane'' and any other pane.

Several aspects of the behavior and look of the debugger can be customized using the options in the ``Properties menu''. Several of these properties can also be set as application resources in the standard X window system resource files, such as the .Xdefaults file in the user's HOME directory. See ``Customization'' for details. Many of the customizable resources can also be set using command line options (see ``Invoking the debugger'').

NOTE: A separate tutorial covers the command line user interface. For a more complete description of the individual commands, see debug(1) or the on-line help facility. If you are familiar with the dbx debugger, you will find a comparison of debug to dbx in ``A guide to debug for dbx users''.

Next topic: Invoking the debugger

© 2004 The SCO Group, Inc. All rights reserved.
UnixWare 7 Release 7.1.4 - 27 April 2004