1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
2<html lang="en">
3<head>
4  <meta http-equiv="content-type" content="text/html; charset=utf-8">
5  <title>Debugging Tips</title>
6  <link rel="stylesheet" type="text/css" href="mesa.css">
7</head>
8<body>
9
10<h1>Debugging Tips</h1>
11
12<p>
13   Normally Mesa (and OpenGL) records but does not notify the user of
14   errors.  It is up to the application to call
15   <code>glGetError</code> to check for errors.  Mesa supports an
16   environment variable, MESA_DEBUG, to help with debugging.  If
17   MESA_DEBUG is defined, a message will be printed to stdout whenever
18   an error occurs.
19</p>
20
21<p>
22   More extensive error checking is done when Mesa is compiled with the
23   DEBUG symbol defined.  You'll have to edit the Make-config file and
24   add -DDEBUG to the CFLAGS line for your system configuration.  You may
25   also want to replace any optimization flags with the -g flag so you can
26   use your debugger.  After you've edited Make-config type 'make clean'
27   before recompiling.
28</p>
29<p>
30   In your debugger you can set a breakpoint in _mesa_error() to trap Mesa
31   errors.
32</p>
33<p>
34   There is a display list printing/debugging facility.  See the end of
35   src/dlist.c for details.
36</p>
37
38</body>
39</html>
40