1998-02-19 06:21:27 +00:00
|
|
|
The GLIB, GDK, and GTK libraries have extensive support for
|
|
|
|
debugging the library and your programs.
|
|
|
|
|
|
|
|
The amount of debugging being done can be determined both
|
|
|
|
at run time and compile time.
|
|
|
|
|
|
|
|
COMPILE TIME OPTIONS
|
|
|
|
--------------------
|
|
|
|
|
|
|
|
At compile time, the amount of debugging support included is
|
|
|
|
determined by four macros:
|
|
|
|
|
|
|
|
G_ENABLE_DEBUG
|
|
|
|
If set, enable support for runtime checking.
|
|
|
|
|
|
|
|
G_DISABLE_ASSERT
|
|
|
|
If set, disable g_assert macros
|
|
|
|
|
|
|
|
G_DISABLE_CHECKS
|
|
|
|
If set, disable the g_return_if_fail and g_return_val_if_fail macros
|
|
|
|
|
|
|
|
GTK_NO_CHECK_CASTS
|
|
|
|
If set, don't check casts between different object types
|
|
|
|
|
|
|
|
|
|
|
|
Whether these macros are defined is controlled at configuration
|
|
|
|
time by the --enable-debug option.
|
|
|
|
|
|
|
|
--enable-debug=minimum [default]
|
|
|
|
Enable only inexpensive sanity checking
|
|
|
|
sets GTK_NO_CHECK_CASTS
|
|
|
|
|
|
|
|
--enable-debug=yes
|
|
|
|
Enable all debugging support
|
|
|
|
sets G_ENABLE_DEBUG
|
|
|
|
|
|
|
|
--enable-debug=no (or --disable-debug)
|
|
|
|
Disable all debugging support (fastest)
|
|
|
|
sets G_DISABLE_ASSERT, G_DISABLE_CHECKS, and GTK_NO_CHECK_CASTS
|
|
|
|
|
|
|
|
|
|
|
|
RUN TIME OPTIONS
|
|
|
|
----------------
|
|
|
|
|
1998-02-19 18:02:03 +00:00
|
|
|
At run time, if GTK+ was compiled with debugging enabled, different
|
|
|
|
types of debugging information can be printed out. This is controlled
|
|
|
|
by the:
|
|
|
|
|
|
|
|
GTK_DEBUG and GDK_DEBUG environment variables
|
|
|
|
--gtk-debug and --gdk-debug command line options
|
|
|
|
--gtk-no-debug and --gdk-no-debug command line options
|
1998-02-19 06:21:27 +00:00
|
|
|
|
1998-02-19 18:02:03 +00:00
|
|
|
First the environment variables are applied, then the command line
|
|
|
|
options are applied in the order given on the command line.
|
1998-02-19 06:21:27 +00:00
|
|
|
|
1998-02-19 18:02:03 +00:00
|
|
|
Each of these can either be the special value ALL, or a sequence of
|
|
|
|
':' separated options. (Note, case is significant). The environment
|
|
|
|
variables and the --gtk-debug and --gdk-debug options add debugging
|
|
|
|
options and the --gtk-no-debug and --gdk-no-debug options remove
|
|
|
|
them.
|
|
|
|
|
|
|
|
As noted below, some of these are useful in application debugging, but
|
|
|
|
most are only interested to those debugging the libraries
|
|
|
|
|
|
|
|
For instance:
|
|
|
|
|
|
|
|
GDK_DEBUG_FLAGS=misc:dnd testgtk --gdk-no-debug dnd --gdk-debug events
|
|
|
|
|
|
|
|
runs testgtk with the 'misc' and 'events' debugging options.
|
1998-02-19 06:21:27 +00:00
|
|
|
|
|
|
|
GTK_DEBUG
|
|
|
|
---------
|
|
|
|
|
|
|
|
Application relevant options:
|
|
|
|
|
|
|
|
'objects' - Trace the creation and destruction of objects, print
|
|
|
|
out a summary at program termination
|
|
|
|
|
|
|
|
Options only interesting to library maintainers:
|
|
|
|
|
|
|
|
GDK_DEBUG
|
|
|
|
---------
|
|
|
|
|
|
|
|
Application relevant options:
|
|
|
|
|
|
|
|
'events' - Show all events received by GTK
|
|
|
|
|
|
|
|
Options only interesting to library maintainers:
|
|
|
|
|
|
|
|
'misc' - Miscellaneous information
|
|
|
|
'dnd' - Information about drag-and-drop
|
|
|
|
'color-context' - Information about the internal workings of
|
|
|
|
GdkColorContext
|
|
|
|
'xim' - Information about X Input Method support
|
1998-02-19 18:02:03 +00:00
|
|
|
|
|
|
|
|
|
|
|
- Owen Taylor <owt1@cornell.edu>
|
|
|
|
98/02/19
|