<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html lang="en">
<head>
  <meta http-equiv="content-type" content="text/html; charset=utf-8">
  <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>
