Additional Browser Notes
Directories
- Help
- Help files that are invoked from the Help menu in the browser
- Sather
- Sather source files
- Tcl
- Tcl source code for the browser
- TkKit
- Interface to Tcl/Tk. Compilation of the browser
requires the -gui flag be used.
See also the file Help/Files for information on the breakdown
of the Tcl source.
Please see the notes in
Doc/Installation
for more details about the compile time installation. Some runtime
problems may arise in the Tcl code.
Also see the notes in
Doc/tcl_tk_notes.html
for more details about some Tcl/Tk runtime problems and Tk4.1, Tcl7.5 compatibility.
Fonts
If you get "font not found" errors from tcl, you might want to
check the set of fonts that the scaling uses (see the file
Tcl/browserFontsNColors.tcl). You can change the fonts used arbitrarily,
but scaling etc. rely on reasonable choices, so try to stick with the
original scheme. If font problems arise when you are dumping the
postscript of a graph, check the routine "proc dumpPS" in the file
Tcl/browserMisc.tcl
Please let me (gomes@icsi.berkeley.edu) know of any problems!
Running the Browser
Run the browser just as you would the compiler (it uses almost the
same front end):
bs test.module
or bs test.sa -main FOO
The executable bs is put in same directory as the compiler, and hence
should be in your path. Use the help menu to bring up help on various
aspects of the browser.
Bugs
Occassionally you may see browser internal errors associated with
dealing with parametrized classes. These will go away with the new
parametrized type checking system.
GDB and garbage collection
A note from the *tkSather* distribution that might be relevant:
> If you use the garbage collected version of Sather you will need to
> make sure you link tcl/tk with the Sather garbage collector. This
> requires changes to tcl/tcl.h, tcl/Makefile.in, tk/Makefile.in
I've not yet done this, but as it stands I cannot use gdb with the
browser - it dies somewhere during the first garbage collect.
It might be possible to fix this by recompiling tk and tcl to
use sather's garbage collector.
According to Matthias there is a complicated
combination of machine, OS and garbage collector that determines
whether gdb will work with the tcl interface.