xxgdb(1)


NAME

   xxgdb - X window system interface to the gdb debugger.

SYNOPSIS

   xxgdb  [  -toolkitoption  ...  ]  [-xxgdboption ... ] [-gdboption ... ]
   [objfile [ corefile ]]

DESCRIPTION

   Xxgdb is a graphical user interface to the gdb  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 structures, and to browse source files and functions.

   Xxgdb allows initial gdb commands stored in the  file  .gdbinit  to  be
   executed  immediately  after  the  symbolic  information  is  read.  If
   .gdbinit does not exist in  the  current  directory,  the  user's  home
   directory  is  searched ( /.gdbinit). Option -nx can be used to prevent
   xxgdb from executing this file. Option -i can be  used  to  change  the
   file name of command file.

   Objfile  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 core exists in the current directory or a  corefile  is
   specified,  xxgdb  can be used to examine the state of the program when
   the core dump occurred.

   The name of the debugger invoked by xxgdb is, by default, gdb,  but  it
   can  be overridden with the environment variable XXGDB_DEBUGGER or with
   the db_name option.

OPTIONS

   Xxgdb accepts all of the standard X Toolkit command line  options  (see
   X(1)),  and  all the gdb options (see gdb(1)), plus the following xxgdb
   specific options:

   -db_name debuggername
          Specify the name of the debugger to override the default  "gdb".
          WARNING : by default prompt is the name of the debugger enclosed
          in parenthesis followed by a space. So if the  prompt  is  still
          "(gdb) ", you HAVE TO use -db_prompt "gdb"

   -db_prompt promptstring
          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) ").

   -i filename
          Specify the filename of initial gdb command file. The default is
          ".gdbinit".

   -nx    Do not execute .gdbinit file (or file specified with -i)

   -bigicon
          Uses a 64x64 icon instead of the default 48x48 icon.

SUBWINDOWS

   Xxgdb 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
                       xxgdb .

   Command Window      Provide a list of the common gdb commands which are
                       invoked by simply clicking the LEFT mouse button.

   Dialogue Window     Provide a typing interface to gdb.

   Display Window      Provide a window for displaying variables 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  delimiters  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 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.

IOWIN and NOIOWIN COMMAND

   If compiled, with the right option, xxgdb can use a separate io  window
   to  talk  to  gdb,  so  program output is not confused with gdb output.
   Type command 'iowin' in Dialogue Window to create io window. If you get
   'Undefined command' error message, then xxgdb was not compiled for that
   feature. The program xxgdbiowin is used for this io window.

   If xxgdb was compiled with iowin support, typing 'noiowin'  will  close
   the io window and reset the controlling terminal of the debugger.

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  function  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  function
             selected.   To  set  a  breakpoint  in the program, 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 breakpoint 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.

   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  expression  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 execution stops.

   undisplay Stop displaying the value of the selected expression  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.

   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 executables 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 (>>) 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 xxgdb.

   I/O Win
          Create io window.

   No I/O Win
          Delete io window.

   Displaying C Data Structures
   Xxgdb  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 xxgdb, 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)
          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, xxgdb uses the following
   application-specific resources for user customization.   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.   ("
          !%^&*()+=~|;:{},/#<?\"\n\t")

   stop_color
          Color of the stop sign. (Red)

   arrow_color
          Color of the arrow sign. (Blue)

   updown_color
          Color of the updown sign. (Blue)

   bomb_color
          Color of the bomb sign. (Red)

   dataDpyMaxHeight
          Maximum height of the data display window. (300)

   dataDpyMaxWidth
          Maximum width of the data display window. (600)

   prompt The prompt string used in xxgdb. ("(xxgdb) ")

   db_name
          The name of the debugger program. ("gdb")

   db_prompt
          The prompt string of the debugger program. ("(gdb) ")

   gdbinit
          The filename of initial command file. (".gdbinit")

   nx     If True, xxgdb will not execute .gdbinit at start-up. (False)

   tabstop
          When displaying source code, the width (in spaces) of a tab. (8)

FILES

   a.out          default object file
   core           default core file
   ~/XDbx         resources file (or /usr/lib/X11/app-defaults/XDbx)
   .gdbinit       local initial commands file
   ~/.gdbinit     user's initial commands file

SEE ALSO

   X(1), gdb(1)

COPYRIGHT

   Copyright 1989 The University of Texas at Austin.
   Copyright 1990 Microelectronics and Computer Technology Corporation.
   Copyright 1990-1994 Thomson Consumer Electronics, Inc.

AUTHOR

   Po Cheung.
   Pierre Willard.





Opportunity


Personal Opportunity - Free software gives you access to billions of dollars of software at no cost. Use this software for your business, personal use or to develop a profitable skill. Access to source code provides access to a level of capabilities/information that companies protect though copyrights. Open source is a core component of the Internet and it is available to you. Leverage the billions of dollars in resources and capabilities to build a career, establish a business or change the world. The potential is endless for those who understand the opportunity.

Business Opportunity - Goldman Sachs, IBM and countless large corporations are leveraging open source to reduce costs, develop products and increase their bottom lines. Learn what these companies know about open source and how open source can give you the advantage.





Free Software


Free Software provides computer programs and capabilities at no cost but more importantly, it provides the freedom to run, edit, contribute to, and share the software. The importance of free software is a matter of access, not price. Software at no cost is a benefit but ownership rights to the software and source code is far more significant.


Free Office Software - The Libre Office suite provides top desktop productivity tools for free. This includes, a word processor, spreadsheet, presentation engine, drawing and flowcharting, database and math applications. Libre Office is available for Linux or Windows.





Free Books


The Free Books Library is a collection of thousands of the most popular public domain books in an online readable format. The collection includes great classical literature and more recent works where the U.S. copyright has expired. These books are yours to read and use without restrictions.


Source Code - Want to change a program or know how it works? Open Source provides the source code for its programs so that anyone can use, modify or learn how to write those programs themselves. Visit the GNU source code repositories to download the source.





Education


Study at Harvard, Stanford or MIT - Open edX provides free online courses from Harvard, MIT, Columbia, UC Berkeley and other top Universities. Hundreds of courses for almost all major subjects and course levels. Open edx also offers some paid courses and selected certifications.


Linux Manual Pages - A man or manual page is a form of software documentation found on Linux/Unix operating systems. Topics covered include computer programs (including library and system calls), formal standards and conventions, and even abstract concepts.