So... I looked at the mplayer source... The mplayer build system is fubar, and I don't want to try fixing it. They're using a common set of ldflags for everything indiscriminately. gl_common.c is for GLX and is used for vo_gl and vo_gl2. vo_macosx.m is for vo_macosx. The former needs -lGL with no -fw OpenGL, the latter needs -fw OpenGL with no -lGL. Feel free to send this info upstream and give me a bug number to follow, but their build system is not clean enough for me to want to try patching. On Apr 22, 2009, at 20:59, Jeremy Huddleston wrote:
Then the problem is much deeper in that it's trying to mix GLX and CGL at the same time. My guess is that this is a complicated and incorrect set of #ifdefs... many applications have such problems, and I've been working with upstream developers to get them fixed as I've run into them.
mplayer should have two output plugins for gl. One is macosx which should be linked with '-fw OpenGL'; the other is glx which should be linked with -lGL.
The fact that glXDestroyContext is referenced from a file called gl_common.c scares me because it seems that their "common GL" code actually isn't GL at all but GLX. This is definitely an mplayer bug, so please file this issue upstream, and let me know the URL to the bug, so I can follow up with those developers.
On Apr 22, 2009, at 20:49, vmrsss wrote:
PS. If I remove -lGL, linking fails because of
Undefined symbols: "_glXChooseVisual", referenced from: _config in vo_gl.o "_glXCreateContext", referenced from: _setGlWindow in gl_common.o "_glXGetConfig", referenced from: _initGl in vo_gl2.o _initGl in vo_gl2.o _initGl in vo_gl2.o _initGl in vo_gl2.o _config in vo_gl2.o _config in vo_gl2.o _config in vo_gl2.o _config in vo_gl2.o _config in vo_gl2.o _config in vo_gl2.o _config in vo_gl2.o _config in vo_gl2.o _config in vo_gl2.o "_glXSwapBuffers", referenced from: _swapGlBuffers in gl_common.o "_glXDestroyContext", referenced from: _releaseGlContext in gl_common.o _setGlWindow in gl_common.o _setGlWindow in gl_common.o "_glXMakeCurrent", referenced from: _releaseGlContext in gl_common.o _setGlWindow in gl_common.o
which are not in /System/Library/Frameworks/OpenGL.framework/ Libraries/libGL.dylib nor in OpenGL, apparently. (Sorry for being so ignorant about all this...) _______________________________________________ Xquartz-dev mailing list Xquartz-dev@lists.macosforge.org http://lists.macosforge.org/mailman/listinfo.cgi/xquartz-dev
_______________________________________________ Xquartz-dev mailing list Xquartz-dev@lists.macosforge.org http://lists.macosforge.org/mailman/listinfo.cgi/xquartz-dev