【发布时间】:2018-08-02 00:32:08
【问题描述】:
我用 qt5 在 i.Mx6Q (Buildroot) 上输入这些命令
# export QT_QPA_EGLFS_INTEGRATION=eglfs_viv
# CinematicExperience-demo -platform eglfs
demo 应用运行正常,但显示:
qt.qpa.egldeviceintegration: Failed to load EGL device integration "eglfs_viv"
我发现this 说这个错误意味着我的板上没有图形加速。
还有this说需要开启
kernel-module-imx-gpu-viv
libgles2-mx6
libegl-mx6
最后,我发现this 说内核版本必须从 3.10.x 到 4.1.x。 所以我在menuconfig中这样改成4.1.15(原版是4.14.14):
Kernel version (Custom Git repository)
(git://git.freescale.com/imx/linux-imx.git)URL of custom repository
(rel_imx_4.1.15_2.0.0_ga)Custom repository version
(imx_v7_mfg)Defconfig name
(board/freescale/imx6-sabresd/linux_qt5.fragment)Additional configuration fragment files
Kernel binary format(zImage)
[*]Build a Device Tree Blob(DTB)
(imx6q-sabresd)Device Tree Source file names
它编译成功,但是当我在 SD 卡上部署并尝试运行 QT 演示时它显示:
qt.qpa.egldeviceintegration: Failed to load EGL device integration "eglfs_viv"
MESA-LOADER: failed to retrieve device information
gbm: failed to open any driver (search paths /usr/lib/dri)
gbm: Last dlopen error: File not found
failed to load driver: vivante
drmModeGetResources failed
Segmentation fault
问题:
如何在 i.Mx6Q (Buildroot) 上开启图形加速? 打开'kernel-module-imx-gpu-viv'是正确的步骤吗?如果正确,那么如何将内核设置为低版本才能成功运行QT demo?
【问题讨论】:
-
在forums.wandboard.org/viewtopic.php?f=15&t=991查看 i.MX6Q 的旧 Buildroot 和内核配置除了内核驱动程序,您还需要用户空间中的库。
标签: qt linux-kernel embedded-linux buildroot imx6