[Mesa-users] Building a working opengl32.dll?

Charles Huber genpfault at gmail.com
Sun Oct 28 14:58:44 PDT 2012


For the Mesa 9.0 tarball is there a combination of OS, compiler, and
SCons invocation that will produce a working opengl32.dll for Windows?

I've been trying to run the attached test program (In Debug mode) in
VS2010 Express using FreeGLUT 2.8.0.  It should display a spinning red
square with a blue top-right corner.


Building on Linux (Ubuntu 12.04, MinGW cross-compiler):
scons -j 4 \
build=release \
platform=windows \
toolchain=crossmingw \
mesagdi

Stops on line 36 (glRotatef( angle, 0, 0, 1 );) with:
"First-chance exception at 0x007cc640 in glHarness.exe: 0xC0000005:
Access violation."


Building on Windows 7 (MinGW + MSYS, using the VS2010 Express compiler):
scons.py -j 8 \
build=release \
platform=windows \
mesagdi

Black window while running, hits a heap corruption breakpoint on close:
ntdll.dll!_RtlpBreakPointHeap at 4()  + 0x23 bytes	
ntdll.dll!_RtlpCheckBusyBlockTail at 8()  + 0x170 bytes	
ntdll.dll!_RtlpValidateHeapEntry at 12()  + 0x30e83 bytes	
ntdll.dll!_RtlDebugFreeHeap at 12()  + 0x9a bytes	
ntdll.dll!@RtlpFreeHeap at 16()  + 0x576fe bytes	
ntdll.dll!_RtlFreeHeap at 12()  + 0x54ed bytes	
kernel32.dll!_HeapFree at 12()  + 0x14 bytes	
opengl32.dll!free(void * pBlock)  Line 51	
opengl32.dll!_mesa_free_framebuffer_data(gl_framebuffer * fb)  Line
216 + 0x25 bytes
opengl32.dll!_mesa_destroy_framebuffer(gl_framebuffer * fb)  Line 194	
opengl32.dll!_mesa_reference_framebuffer_(gl_framebuffer * * ptr,
gl_framebuffer * fb)  Line 249 + 0x9 bytes
opengl32.dll!_mesa_free_context_data(gl_context * ctx)  Line 1114 + 0x16 bytes	
opengl32.dll!WMesaDestroyContext(wmesa_context * pwc)  Line 1153	
opengl32.dll!wglDeleteContext(HGLRC__ * hglrc)  Line 191	
glHarness.exe!fgCloseWindow(tagSFG_Window * window)  Line 1563	
...


Building on Windows 7 (MinGW + MSYS, using the MinGW compiler):
scons.py \
build=release \
platform=windows \
toolchain=mingw \
mesagdi

Build failed with:
...
  Compiling src\glsl\ir_validate.cpp ...
  Compiling src\glsl\ir_variable_refcount.cpp ...
  Archiving build\windows-x86\mesa\libmesa.a ...
The command line is too long.
scons: *** [build\windows-x86\mesa\libmesa.a] Error 1
scons: building terminated because of errors.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: main.cpp
Type: text/x-c++src
Size: 1723 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/mesa-users/attachments/20121028/e5f456c9/attachment.cpp>


More information about the mesa-users mailing list