我试图通过连接到远程linux服务器在linux中运行opengl程序。 我使用ssh连接并提供-X选项,以使用X窗口系统。
我能够连接到服务器并进行编译。我成功创建了可执行文件。 现在,当我运行可执行文件时,我收到一个错误。它说
freeglut (./lineTest): ERROR: Internal error <FBConfig with necessary capabilities not found> in function fgOpenWindow
X Error of failed request: BadWindow (invalid Window parameter)
Major opcode of failed request: 4 (X_DestroyWindow)
Resource id in failed request: 0x0
Serial number of failed request: 26
Current serial number in output stream: 29
其中lineTest是可执行文件的名称。
当我编译代码时,我将它链接到过剩和GLU库。
由于服务器是远程服务器,因此无法对驱动程序进行太多更改。
答案 0 :(得分:5)
错误消息的第一行是一个告密者:
freeglut (./lineTest): ERROR: Internal error <FBConfig with necessary capabilities not found> in function fgOpenWindow
...这意味着客户端所连接的X11服务器不支持设置OpenGL所需的帧缓冲格式。
第一步是使用glxinfo
来检查实际支持的内容。请按照您的程序运行glxinfo
并在此处发布其输出(很可能在该行的某处没有OpenGL支持)。同时在本地执行glxinfo
,因为它是您的本地计算机,它将完成所有OpenGL工作。