我有一个Qt5
应用程序Qwt
使用库来绘制一些轨迹,具有图形缩放和其他一些简单的Qt小部件,如QLabel
,QPushButton
,QScrollBar
,QFrame
等。
该应用程序在 Linux 上运行。
Linux 内核是 3.10.17。
发行版是 Ubuntu 14.04.4 LTS(可信)。
Qt版本是5.2.1。
我试图运行指定平台eglfs
的应用程序(据我所知,它应该直接在 Linux 帧缓冲器上运行)而不是默认xcb
(需要 X 服务器)。 但是我无法让它工作(这篇文章中描述了问题:"EGL 错误:使用 -platform eglfs 运行 Qt5 应用程序时,无法在 i.MX6 上创建 EGL 表面:错误0x300b")。
我的问题是: 如果我成功了,就 CPU 负载而言,eglfs
在xcb
方面是否会有显着的性能改进?
我没有看到Qt的eglfs或xcb平台之间的巨大差异,甚至xcb有时也更流畅。 例如,鼠标移动在 XCB 中非常平滑,而在 EGLFS 中则不然。 但是,如果您使用 QGlPainter 而不是 QPainter,并相应地使用 QGlWidget 而不是 QWidget,将会有巨大的改进。
此外,QtQuick2 可以很好地与 eglfs 配合使用,它在我们的 IMX6-Rex 板中非常流畅和高质量。