OpenGL:在VMware(debian x64)中,glxgears可以工作,但其他OpenGL程序不能工作
在VMware中安装debian并安装使用freeglut运行OpenGL应用程序所需的所有库之后,我使用OpenGL:在VMware(debian x64)中,glxgears可以工作,但其他OpenGL程序不能工作,opengl,vmware,freeglut,glx,Opengl,Vmware,Freeglut,Glx,在VMware中安装debian并安装使用freeglut运行OpenGL应用程序所需的所有库之后,我使用glxgears确保一切正常 # glxgears 3426 frames in 5.0 seconds = 685.171 FPS 3562 frames in 5.0 seconds = 712.339 FPS ... XI0: fatal IO error 11 (Resource temporarily unavailable) on X server ":0.0" after 3
glxgears
确保一切正常
# glxgears
3426 frames in 5.0 seconds = 685.171 FPS
3562 frames in 5.0 seconds = 712.339 FPS
...
XI0: fatal IO error 11 (Resource temporarily unavailable) on X server ":0.0"
after 33172 requests (33170 known processed) with 0 events remaining.
glxgears
似乎运行良好。即使单击glxgears窗口框架上的“关闭”后出现上述错误,它仍会在窗口中显示齿轮旋转
但当我尝试使用freeglut3执行一个简单的OpenGL程序时,我得到了以下结果:
# ./program
X Error of failed request: BadRequest (invalid request code or no such operation)
Major opcode of failed request: 155 (GLX)
Minor opcode of failed request: 34 ()
Serial number of failed request: 36
Current serial number in output stream: 35
一个在非虚拟机上使用所有相同文件和库的程序,我在家里不可用
我如何解决这个问题?这是在虚拟机上运行OpenGL程序的常见问题吗?这是您的GLX服务器告诉您的一种神秘方式:它从未听说过
glXCreateContextAttribsARB
(GLX操作码34)。换句话说,您的系统不支持。解释原因的最佳方法是运行类似于glxinfo-v
的程序,并将输出添加到问题中
由于glxgears
清楚地说明了这一点,因此可以在系统上创建一个没有此扩展的工作环境。我不得不想象freeglut3应该足够聪明,如果您不要求任何花哨的东西(例如,不要要求核心概要文件上下文或特定的主要/次要版本),就不会使用扩展。如果不是,那么您必须找到更复杂的GLX实现或使用不同的框架