我使用qt5
在i.Mx6Q(Buildroot)上输入这些命令# export QT_QPA_EGLFS_INTEGRATION=eglfs_viv
# CinematicExperience-demo -platform eglfs
演示应用程序正常运行,但显示:
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.14.14)中将其更改为4.1.15:
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)上启用图形加速? 打开内核模块 - imx-gpu-viv'是正确的一步吗?如果它是正确的,那么如何将内核设置为较低版本以成功运行QT演示?
答案 0 :(得分:0)
我在内核4.1中遇到了同样的问题,但它使用的是Yocto Project分支摇滚和Qt5.9。
使用您的应用程序运行ldd /path_your_app/app_qt
并将输出放在此处。
运行zcat /proc/config.gz
并将输出放在此处。
ATT, Cleiton Bueno
Blog | B2Open | Embarcados