opengl support in wine

Mike McCormack mike at codeweavers.com
Sun Dec 4 07:26:36 CST 2005


Mike Hearn wrote:
> On Thu, 01 Dec 2005 16:12:47 +0000, Tomas Carnecky wrote:
> 
>>I've had a discussion with someone through this list about wine and 
>>libGL.so. It was about wine using dlopen("libGL.so") instead of linking
>>directly with libGL.so.
> 
> 
> IIRC this was done so CodeWeavers can ship a GL enabled build. I don't see
> any reason to change it. Weak linking is usually a good thing.

ddraw.dll uses dlopen on libGL, because there's code in ddraw that can 
work without libGL being present, and that is needed for some programs 
(eg. IE6) to run.  dlopen'ing means Wine compiled on a machine with 
libGL can be run on a machine without libGL.

opengl32.dll is directly linked with libGL, since it's not useful 
without it.

If you're implementing your own shared library, you can probably try 
dlopen'ing the functions you need from that first, then falling back to 
dlopening from libGL.

Mike



More information about the wine-devel mailing list