glxCreateContextAttribsARB和OpenGL函数在linux上的动态加载

glxCreateContextAttribsARB and dynamic loading of OpenGL funcs on linux

本文关键字:动态 加载 linux OpenGL 函数 glxCreateContextAttribsARB      更新时间:2023-10-16

我需要在linux系统上动态加载openGL函数。问题是,当我这样做glXCreateContextAttribsARB失败时,试图创建一个gl上下文和程序回落到使用OGL 1.4。它应该在OGL 4.4上。如果我只使用共享库并执行常规链接,代码就可以完美地工作。所以使用动态加载的库有一些问题,我没有看到。这些函数正在用dlopen/dlsym加载,并且没有报告错误。我尝试加载glXCreateContextAttribsARB使用glxGetProcAddressARB,但它没有区别。我难住了。有什么建议吗?

Ubuntu 12.04LTS/GLX 1.4/OGL 4.4/Nvidia 331.62

我找到问题了。由于某些原因,代码试图使用不兼容的视觉效果(24位FB而不是32位)。在我的需求中,我使glxChooseVisual的属性列表更加精确。