Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

qt5.14.1 raspberry pi 4 eglfs_kms failed



  • I think to get correctly compiled the qt for raspberry pi4 in windows.
    On the raspberry I can't use eglfs_kms (works for example with lunuxfb), I hit this error "qt.qpa.egldeviceintegration: Failed to load EGL device integration" eglfs_kms Could not initialize egl display ".
    I really can't understand what is wrong, maybe the libraries on the raspberry are not correctly linked?
    Please help me, I tried everything..
    Thnaks.

    Partial config.summary:
    EGL .................................... yes
    OpenVG ................................. no
    OpenGL:
    Desktop OpenGL ....................... no
    OpenGL ES 2.0 ........................ yes
    OpenGL ES 3.0 ........................ yes
    OpenGL ES 3.1 ........................ yes
    OpenGL ES 3.2 ........................ yes
    Vulkan ................................. no
    Session Management ..................... yes

    EGLFS .................................. yes
    EGLFS details:
    EGLFS OpenWFD ........................ no
    EGLFS i.Mx6 .......................... no
    EGLFS i.Mx6 Wayland .................. no
    EGLFS RCAR ........................... no
    EGLFS EGLDevice ...................... yes
    EGLFS GBM ............................ no
    EGLFS VSP2 ........................... no
    EGLFS Mali ........................... no
    EGLFS Raspberry Pi ................... no
    EGLFS X11 ............................ no
    LinuxFB ................................ yes
    VNC .................................... yes

    Library on Raspberry:
    pi@raspberrypi:~ $ ls -lisa /usr/local/qt5/plugins/platforms
    total 1676
    263371 4 drwxr-xr-x 2 pi pi 4096 Mar 30 10:28 .
    263327 4 drwxr-xr-x 24 pi pi 4096 Mar 30 10:41 ..
    263372 12 -rwxr-xr-x 1 pi pi 9664 Mar 30 10:19 libqeglfs.so
    263373 368 -rwxr-xr-x 1 pi pi 372868 Mar 30 10:20 libqlinuxfb.so
    263375 128 -rwxr-xr-x 1 pi pi 129912 Mar 30 10:20 libqminimalegl.so
    263374 100 -rwxr-xr-x 1 pi pi 100844 Mar 30 10:19 libqminimal.so
    263376 116 -rwxr-xr-x 1 pi pi 117436 Mar 30 10:19 libqoffscreen.so
    263377 200 -rwxr-xr-x 1 pi pi 204220 Mar 30 10:20 libqvnc.so
    263378 744 -rwxr-xr-x 1 pi pi 760108 Mar 30 10:28 libqwebgl.so

    pi@raspberrypi:~ $ ldd /usr/local/qt5/plugins/platforms/libqeglfs.so
    linux-vdso.so.1 (0xbef68000)
    /usr/lib/arm-linux-gnueabihf/libarmmem-${PLATFORM}.so => /usr/lib/arm-linux-gnueabihf/libarmmem-v7l.so (0xb6fa3000)
    libQt5EglFSDeviceIntegration.so.5 => /usr/local/qt5/plugins/platforms/../../lib/libQt5EglFSDeviceIntegration.so.5 (0xb6ef4000)
    libfontconfig.so.1 => /usr/lib/arm-linux-gnueabihf/libfontconfig.so.1 (0xb6e98000)
    libfreetype.so.6 => /usr/lib/arm-linux-gnueabihf/libfreetype.so.6 (0xb6df5000)
    libz.so.1 => /lib/arm-linux-gnueabihf/libz.so.1 (0xb6dca000)
    libQt5Gui.so.5 => /usr/local/qt5/plugins/platforms/../../lib/libQt5Gui.so.5 (0xb683f000)
    libQt5DBus.so.5 => /usr/local/qt5/plugins/platforms/../../lib/libQt5DBus.so.5 (0xb67a4000)
    libQt5Core.so.5 => /usr/local/qt5/plugins/platforms/../../lib/libQt5Core.so.5 (0xb61d0000)
    libGLESv2.so.2 => /usr/lib/arm-linux-gnueabihf/libGLESv2.so.2 (0xb61b1000)
    libEGL.so.1 => /usr/lib/arm-linux-gnueabihf/libEGL.so.1 (0xb6192000)
    libpthread.so.0 => /lib/arm-linux-gnueabihf/libpthread.so.0 (0xb6168000)
    libdl.so.2 => /lib/arm-linux-gnueabihf/libdl.so.2 (0xb6155000)
    libstdc++.so.6 => /usr/lib/arm-linux-gnueabihf/libstdc++.so.6 (0xb600e000)
    libm.so.6 => /lib/arm-linux-gnueabihf/libm.so.6 (0xb5f8c000)
    libgcc_s.so.1 => /lib/arm-linux-gnueabihf/libgcc_s.so.1 (0xb5f5f000)
    libc.so.6 => /lib/arm-linux-gnueabihf/libc.so.6 (0xb5e11000)
    libexpat.so.1 => /lib/arm-linux-gnueabihf/libexpat.so.1 (0xb5dd0000)
    libuuid.so.1 => /lib/arm-linux-gnueabihf/libuuid.so.1 (0xb5db9000)
    /lib/ld-linux-armhf.so.3 (0xb6fcb000)
    libpng16.so.16 => /usr/lib/arm-linux-gnueabihf/libpng16.so.16 (0xb5d7d000)
    libGLdispatch.so.0 => /usr/lib/arm-linux-gnueabihf/libGLdispatch.so.0 (0xb5cfe000)



  • @Gio26 said in qt5.14.1 raspberry pi 4 eglfs_kms failed:

    I can't use eglfs_kms

    Are you sure the VC4 driver is loaded in RPi 4?

    1. Did you update the /boot/config.txt file already?
    2. What's the output of the command
      lsmod | grep -i vc4


  • @Pablo-J-Rogina said in qt5.14.1 raspberry pi 4 eglfs_kms failed:

    lsmod | grep -i vc4

    Yes I'm sure (maybe... at this time I'am not sure of anything , VC4 is enable and working with other applications.
    This is the output:
    vc4 176128 0
    drm_kms_helper 184320 2 vc4
    snd_soc_core 192512 1 vc4
    drm 442368 5 v3d,vc4,gpu_sched,drm_kms_helper
    snd_pcm 102400 4 vc4,snd_pcm_dmaengine,snd_bcm2835,snd_soc_core

    This is my configure:
    ../configure -skip qtscript -skip qtlocation -skip qtwayland -skip qtwebengine -reduce-exports -platform win32-g++ -release -opengl es2 -egl -kms -eglfs -linuxfb -system-freetype -fontconfig -device linux-rasp-pi4-v3d-g++ -sysroot C:/SysGCC/Raspberry/arm-linux-gnueabihf/sysroot -hostprefix C:/SysGCC/raspberry/arm-linux-gnueabihf/sysroot/usr/local/qt5-rpi4 -nomake examples -no-compile-examples -no-gtk -opensource -confirm-license -make libs -device-option CROSS_COMPILE=C:/SysGCC/Raspberry/bin/arm-linux-gnueabihf- -IC:/SysGCC/raspberry/arm-linux-gnueabihf/sysroot/usr/include/libdrm

    I had to install the libdrm-dev library on the raspberry to compile kms. I don't knw if this is can be th problem.

    Thanks a lot for your help.



  • @Gio26 said in qt5.14.1 raspberry pi 4 eglfs_kms failed:

    I had to install the libdrm-dev library on the raspberry to compile kms. I don't knw if this is can be th problem.

    I cannot tell you for sure, but that you have specified the libdrm include in particular is not a good symptom, I think it sould be picked from the sysroot location as all the other headers...

    ./configure ... ... -IC:/SysGCC/raspberry/arm-linux-gnueabihf/sysroot/usr/include/libdrm



  • @Pablo-J-Rogina said in qt5.14.1 raspberry pi 4 eglfs_kms failed:

    C:/SysGCC/raspberry/arm-linux-gnueabihf/sysroot/usr/include/libdrm

    I'm sure it's as you say, I must have linked the wrong libraries. I made an ubuntu virtual machine and compiled without problems. Everything works on raspberry. However, I miss the part in the windows environment.
    Is there any way to make only the missing part in the windows environment? In linux the compilation lasts a few hours in windows more than 12.

    I will try to recompile everything in windows at least to understand what was wrong, linking as you told me.

    Thanks @Pablo-J-Rogina



  • @Gio26 said in qt5.14.1 raspberry pi 4 eglfs_kms failed:

    I will try to recompile everything in windows

    Is it really worth the time and effort?

    you said you have a Linux VM where everything builds fine, and even is faster than Windows... I'd say stay that way :-)



  • @Pablo-J-Rogina said in qt5.14.1 raspberry pi 4 eglfs_kms failed:

    Is it really worth the time and effort?

    I need to develop in windows, it is not a problem to compile in linux but then how can I do develop in windows?
    Thanks, Thanks, Thanks.



  • For days I been looking for the environment variable set to
    "C:\SysGCC\mingw32\msys64\usr\bin/pkg-config.exe", I think it is wrong and for this it cannot find any package. How can I correctly it to "C: /SysGCC/mingw32/msys64/usr/bin/pkg-config.exe"?
    Thanks.


Log in to reply