TotalView -- a C++ debugger.
TotalView is a powerful multi-process and multi-threaded debugger.
It is easy to learn and easy to use. It suppots C++, C, Fortran
(77 and 90), assembly language, and even mixed-code programs.
It can handles large executables and shared libraries.
Right now it is available on Irix, Solaris, Linux and OSF/1.
TotalView only works for the programs compiled with the -n32
switch on IRIX.
The following documention exists for TotalView (first do setup totalview ):
- man totalview
- <browser> $TVROOT/help/html/index.htm
where <browser> is your favorite web browser
the Etnus web site (the authors of TotalView). The "TotalView QuickView"
link is a good place to start.
How to run TotalView at D0:
an example of how to run TotalView .
TotalView General Instructions:
> setup totalview
Compiling Your Program:
Compile the program you want to debug with the appropriate switches
For all platforms:
For SGI only:
- Include the -g switch on the compiler command line. NOTE: +K0 for the
Kai compiler does this automatically.
- *Do not* include the -O switch on the compiler command line.
- The TotalView Multiprocess Debugger can automatically attach
a process created by calls to fork() and execve() if you link with
the dbfork library. To use this facility, include the -ldbfork
switch on the compiler command line when you link your
program. Precede this switch with the -L$TVROOT/lib
Starting Up TotalView:
- Include either the -n32 or -64 switch on the compiler command
line. TotalView does *not* support compiling with -32 (-o32),
which is the default for some compilers.
- The -ldbfork switch is specific to the executable format.
Include either -ldbfork_n32.a or -ldbfork_n64.a when you
link your program.
To start TotalView, type the totalview command followed by the
name of an executable file, for example:
% totalview my_program
The command syntax is:
% totalview [filename [corefile]]
where object_file is the name of the file you want to debug.
where is the executable file to be debugged.
See the TotalView User's Guide for a complete list of X resources and
If You Hate to Read Documentation:
To use TotalView, all you need to know is how to use the mouse:
To "undive", click on the "^" icon in the upper, right-hand
corner of the window.
- The left button "selects" objects, i.e., selecting a line number
next to a source line will put a breakpoint there, and selecting
the value displayed for a variable will allow you to change the
- The middle button "pops up" a menu of possible commands.
Keyboard accelerators for common actions (g=go, h=halt,
s=step, etc.) are listed in the pop-up menus. Menus vary by type
- The right button "dives" into many objects on the screen. For
example, diving into a variable name brings up the value of the
variable. Diving into a pointer to a structure breaks out the
structure into its components. Diving into a subroutine name
brings up the source for the subroutine.
If you want to know more:
- Play with the selections in the pop-up menus
- Type "Control-?" in any TotalView window and read the
- Type "man totalview" and "man tvdsvr" and read the
TotalView man pages
- Finally, if that isn't enough, read the manual. An on-line version of
the manual is found in the $TVROOT/docs directory, as User_Guide.ps.
please send your comments to Qizhong Li
Last modified: Thu Aug 5 11:50:01 CDT 2004