Mesa Frequently Asked Questions



Introduction

For general OpenGL questions see the OpenGL FAQ

Most questions regarding Mesa can be answered by reading the README files included with Mesa. Please do so before sending email questions.

Suggestions for topics to add to this document are welcome.



Compilation and installation problems

Mesa doesn't compile on my system

First, make sure you have the latest version of Mesa. If a newer version doesn't help, keep reading.

Can't compile on Windows 95/NT using (any) compiler

First, I (Brian) do not develop on 95/NT so I can't help you. Look in the Mesa README files for people to contact for help. Otherwise, ask on the Mesa mailing list.

I compiled my program with Mesa but the linker reports all kinds of undefined symbols such as bgnpolygon, v3f, etc...

The program was written for IRIS GL, not OpenGL (which Mesa emulates). Perhaps you should convert your application to OpenGL.

I'm trying to compile Mesa for 'linux-elf' but get lots of errors.

If the errors look like this:

/usr/lib/crt0.o(.text+0x35): undefined reference to `main'
accum.o(.text+0x1d): undefined reference to `GLOBAL_OFFSET_TABLE_'
accum.o(.text+0x224): undefined reference to `GLOBAL_OFFSET_TABLE_'
etc...

Then you probably don't have a gcc compiler with ELF support even though your kernel can run ELF binaries. Try gcc-2.7.2 or later.

Can't compile Mesa 2.2 (or ealier) on Redhat 4.1

It appears they've changed the X11 development directories a bit. Try adding -I/usr/X11R6/include to the CFLAGS for linux in the Make-config file. You may also have to add -L/usr/X11R6/lib to the XLIBS line.

Can't compile Mesa 2.x on RedHat 5.0

Get Mesa 2.6.


Runtime problems

I'm seeing errors in depth (Z) buffering

Make sure the ratio of the far to near clipping planes isn't too great. Look here for details.

If that doesn't help then edit the src/config.h file and change DEPTH_BITS to 32 instead of 16. Mesa uses a 16-bit depth buffer by default which is smaller and faster to clear than a 32-bit buffer but not as accurate.

Depth buffering isn't working at all

Be sure you're requesting a depth buffered-visual. If you set the MESA_DEBUG environment variable it will warn you about trying to enable depth testing when you don't have a depth buffer.

glGetString() always returns NULL

Be sure you have an active GL context before calling glGetString.

I've compiled Mesa on my Linux (or other Unix system) but I get not DGL-capable errors.

There are two problems here. First, your application uses IRIS GL, not OpenGL. Find and OpenGL version of the application or rewrite it to use OpenGL.

Second, if you want to remotely display OpenGL apps from your SGI onto another X server you must compile and install Mesa on the SGI, not on your local host. See below for more information about GLX.

Mesa crashes on my Linux PC with "signal 11" or other errors when using the linux-386 configs

Try upgrading the binutils on your system. Older versions of binutils don't correctly assemble the 386 code in Mesa.

Points, lines, triangles aren't rendered on the exact pixel I expect

This is probably a problem involving point sampling and numerical round-off error. See the appendix of the OpenGL Programming Guide for the solution.


Hardware support

Is anybody working on supporting 3-D PC hardware?

Yes, for currently available hardware support see the info at the bottom of the main Mesa page.

There's at least one or two other Linux 3-D hardware projects underway that haven't been officially announced yet. I can's say any more.

What about S3 Virge support with Linux?

Someone at S3 is working on this in his spare time. There is no estimated time for release.

What about the nVidia Riva128?

There are no plans to support it at this time. nVidia hasn't released their hardware specs to the public. Perhaps if a group of people would organize themselves and contact nVidia they could get technical specs under NDA. You should post to the Mesa mailing list if interested in doing this.

What about support for the XYZ Inc. SuperTurboMega3D card?

First, a 3-D card cannot be supported with Mesa unless complete technical specifications are available for the hardware. Most vendors don't release this info, except perhaps under NDA. Second, someone has to volunteer to write the Mesa driver for the 3-D hardware.

I (Brian) do not have the time to do this myself. However, I'm happy to assist anyone working on new Mesa drivers.

Ultimately, 3-D hardware acceleration for Linux should be integrated into the (XFree86) X server. If you're interested in doing the work you should contact the XFree86 development group.

Will Mesa work with Voodoo2 (on Linux or Windows)?

Voodoo2 requires that the 3Dfx Glide library be updated. After that has been done Mesa will work with Voodoo2.


Miscellaneous

Can I use Mesa with Ousterhout's Tcl/Tk?

Yes, check out Togl

Can I use Mesa to display OpenGL applications on my X terminal?

Yes. If you have source code to the application, just recompile and relink with Mesa instead of OpenGL.

If you do not have souce code to the application you can still use Mesa if your operating system supports dynamic run-time linking (such as IRIX 5.x). Basically, you have to create a Mesa shared library (DSO under IRIX 5.x) and tell the runtime loader/linker to use the Mesa library instead of the OpenGL library. Usually this is done by creating a symbolic link to the Mesa library which is the same as the OpenGL library name. Then set a shell environment variable (_RLD_LIST on IRIX 5.x) to point to the symbolic link. An example of this for IRIX 5.x is in the Mesa README file.

I compiled Mesa on my Linux (or other) computer but when I try to view programs on my PC which are running on my SGI I get "GLX missing" errors

Compiling Mesa on your Linux PC does not install the GLX extension into your X server. You have to compile Mesa on the SGI as explained in the previous step.

Is Mesa multithreaded?

Thread support in Mesa is under development. Contact John Stone (johns@umr.edu) for details.


Linux Quake questions

A lot of people use Mesa on Linux to run Quake...
If you have problems, be sure you have the latest version of Mesa. Then, perhaps ask for help on the 3dfx.glide.linux newsgroup.




Last updated on September 17, 1998.