| <!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> |