为什么QtCompositor无法初始化EGL显示?

时间:2018-02-22 12:42:18

标签: qt qtwayland

我试图运行QWaylandCompositor示例代码" qwindow-compositor"在Kaby湖系统和Sky湖系统。但它显示为

  

QtCompositor:无法初始化EGL显示。无法获得EglDisplay窗口。

我需要做些什么来解决这个问题?

2 个答案:

答案 0 :(得分:0)

来自自述文件

  

在X11上测试基于Qt的合成器:

     

大多数基于QWidget的应用程序将使用共享内存缓冲区   所有硬件。 OpenGL和Qt Quick应用程序需要一种发送图形的方法   从客户端到服务器的内存缓冲区有很多选择,而不是全部   选项适用于所有硬件。

     

X Composite缓冲区集成应该适用于所有现代X服务器。它   可以与EGL或GLX一起用作OpenGL后端。这必须匹配   xcb平台插件使用的后端。 (通常GLX是Qt的默认值   在X11上运行的应用程序。)要使用与EGL共享的X Composite缓冲区,   如下启动合成器:

QT_XCB_GL_INTEGRATION=xcb_egl QT_WAYLAND_CLIENT_BUFFER_INTEGRATION=xcomposite-egl ./pure-qml

只需与pure-qml

交换qwindow-compositor即可

答案 1 :(得分:0)

就我而言,我的系统上缺少以下库

libgles2-mesa libgles2-mesa-dev