<HTML>

<TITLE>Debugging Tips</TITLE>

<link rel="stylesheet" type="text/css" href="mesa.css"></head>

<BODY>

<H1>Debugging Tips</H1>

<p>
   Normally Mesa (and OpenGL) records but does not notify the user of
   errors.  It is up to the application to call
   <code>glGetError</code> to check for errors.  Mesa supports an
   environment variable, MESA_DEBUG, to help with debugging.  If
   MESA_DEBUG is defined, a message will be printed to stdout whenever
   an error occurs.
</p>

<p>
   More extensive error checking is done when Mesa is compiled with the
   DEBUG symbol defined.  You'll have to edit the Make-config file and
   add -DDEBUG to the CFLAGS line for your system configuration.  You may
   also want to replace any optimization flags with the -g flag so you can
   use your debugger.  After you've edited Make-config type 'make clean'
   before recompiling.
</p>
<p>
   In your debugger you can set a breakpoint in _mesa_error() to trap Mesa
   errors.
</p>
<p>
   There is a display list printing/debugging facility.  See the end of
   src/dlist.c for details.
</p>

</BODY>
</HTML>