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 ---------------- At run time, if GTK+ was compiled with debugging enabled, different types of debugging information can be printed out by setting the --gtk-debug and --gdk-debug command line options, or the GTK_DEBUG and GDK_DEBUG environment variables. (The command line options override the environment variables) Each of these can either be the special value ALL, or a sequence of ':' separated options. (Note, case is significant) As noted below, some of these are useful in application debugging, but most are only interested to those debugging the libraries 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