相关疑难解决方法(0)

OpenGL 程序不适用于 X 转发

我在 Linux 服务器中有一个 OpenGL 程序。我想通过 X 转发远程运行该程序,但它失败了,而 xclock 和 xeyes 等程序运行良好。(我确认该程序可在本地桌面环境中运行。)以下是附加信息。

测试代码:

#include <GL/glut.h>

#define WIDTH 300
#define HEIGHT 300

void display()
{
    glClear(GL_COLOR_BUFFER_BIT);
    glColor3d(1, 0, 0);
    glBegin(GL_POLYGON);
        glVertex2i(10, 10);
        glVertex2i(WIDTH / 2, HEIGHT - 10);
        glVertex2i(WIDTH - 10, 10);
    glEnd();
    glFlush();
}

int main(int argc, char **argv)
{
    glutInit(&argc, argv);
    glutInitWindowPosition(0, 0);
    glutInitWindowSize(WIDTH, HEIGHT);
    glutInitDisplayMode(GLUT_RGBA | GLUT_SINGLE);
    glutCreateWindow("Test");
    glMatrixMode(GL_PROJECTION);
    gluOrtho2D(0, WIDTH, 0, HEIGHT);
    glutDisplayFunc(display);
    glutMainLoop();
}
Run Code Online (Sandbox Code Playgroud)

跑步:

$ gcc test.c -lGLU -lglut
$ ./a.out
Xlib:  extension "Generic Event Extension" …
Run Code Online (Sandbox Code Playgroud)

linux opengl x11-forwarding

5
推荐指数
1
解决办法
9863
查看次数

标签 统计

linux ×1

opengl ×1

x11-forwarding ×1