在Linux中执行OpenGL程序

Bha*_*ath 5 linux opengl ubuntu

我试图通过连接到远程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
Run Code Online (Sandbox Code Playgroud)

其中lineTest是可执行文件的名称.

当我编译代码时,我将它链接到过剩和GLU库.

由于服务器是远程服务器,因此我无法对驱动程序进行太多更改.

dat*_*olf 5

错误消息的第一行是一个告密者:

freeglut (./lineTest):  ERROR:  Internal error <FBConfig with necessary capabilities not found> in function fgOpenWindow
Run Code Online (Sandbox Code Playgroud)

...这意味着客户端连接的X11服务器不支持设置OpenGL所需的帧缓冲区格式.

第一个行动方案是glxinfo用来检查实际支持的内容.请glxinfo按照您的程序运行并在此处发布其输出(很可能在该行的某处没有OpenGL支持).也可以在glxinfo本地执行,因为它是你的本地机器,它将完成所有OpenGL的工作.