Я ввожу эту команду на i.Mx6Q (Buildroot) с qt5
# export QT_QPA_EGLFS_INTEGRATION=eglfs_viv
# CinematicExperience-demo -platform eglfs
Демонстрационное приложение работает нормально, но показывает:
qt.qpa.egldeviceintegration: Failed to load EGL device integration "eglfs_viv"
Я нашел здесь говорится, что эта ошибка означает, что на вашей плате нет ускорения графики.
И это говорит, что мне нужно включить на
kernel-module-imx-gpu-viv
libgles2-mx6
libegl-mx6
Наконец, я нашел здесь говорится, что версия ядра должна быть с 3.10.x до 4.1.x. Поэтому я меняю его на 4.1.15, как в menuconfig (исходная версия - 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?