11.3. Known problems

11.3.1. Unknown extension error message:

Extension defined in the OpenGL library but NOT in opengl_ext.c...
Please report ( !

This means that the extension requested by the application is found in the libGL used by Linux (i.e. the call to glXGetProcAddressARB returns a non-NULL pointer) but that this string was NOT found in Wine extension registry.

This can come from two causes:

  1. The opengl_ext.c file is too old and needs to be generated again.

  2. Use of obsolete extensions that are not supported anymore by SGI or of "private" extensions that are not registered. An example of the former are glMTexCoord2fSGIS and glSelectTextureSGIS as used by Quake 2 (and apparently also by old versions of Half Life). If documentation can be found on these functions, they can be added to Wine extension set.

If you have this, run with WINEDEBUG=+opengl and send me the TRACE.

11.3.2. is built but it is still not working

This may be caused by some missing functions required by opengl_norm.c but that your Linux OpenGL library does not provide.

To check for this, do the following steps:

  1. create a dummy .c file:

    int main(void)
        return 0;
  2. try to compile it by linking both libwine and opengl32 (this command line supposes that you installed the Wine libraries in /usr/local/lib, YMMV):

    gcc dummy.c -L/usr/local/lib -L/usr/local/lib/wine -lwine -lopengl32
  3. if it works, the problem is somewhere else (and you can send me an email). If not, you could re-generate the thunk files for OpenGL 1.1 for example (and send me your OpenGL version so that this problem can be detected at configure time).