Rpi4 Qt5 Qml drmModeGetResources 失败错误

Rpi4 Qt5 Qml drmModeGetResources failed error

我已经使用 Buildroot 创建了一个版本。也对这条评论做了一切 - > https://www.raspberrypi.org/forums/viewtopic.php?t=263418#p1614833 做了我的研究,做了几十次试验,但我一无所获。

我的配置是: Rpi4-64, QT5-Qml, Mesa v3d-vc4, opengl es 2.0

当我尝试 运行 我的 qt qml 应用程序在此版本上时,出现此错误:

QStandardPaths:运行time 目录 /usr/bin/ 的权限错误,7755 而不是 7700 drmModeGetResources 失败(不支持操作) 没有可用的屏幕,假设 24 位颜色 无法创建 window:没有可用的屏幕。

总结:我需要 运行 我的 qt5 qml 应用程序在 Rpi 4 上用硬件加速。

我找到了解决方案。 我认为带 eglfs 的 Rpi4 使用 card0 的默认卡,这是行不通的。需要强制使用 card1 for eglfs.

创建一个包含以下内容的文件“eglfs.json”:

{ "device": "/dev/dri/card1" }

导出 QT_QPA_EGLFS_KMS_CONFIG=/wherever/is/the/file/eglfs.json 和 运行 你的 qt 应用程序!

另外,我的 qt5 qml 程序在 rpi4 buildroot 系统上不显示字体或文本。应对 /usr/share/fonts/your_program_fonts 对我有用。