Unsolved Something went wrong when building Qt5 with eglfs for ARM
-
Question 1
When run with -platform eglfs:
/mnt/duino/qt5/examples/widgets/widgets/analogclock # ./analogclock -platform eglfs QIconvCodec::convertToUnicode: using Latin-1 for conversion, iconv_open failed QIconvCodec::convertFromUnicode: using Latin-1 for conversion, iconv_open failed qt.qpa.egldeviceintegration: EGL device integration plugin keys: ("eglfs_mali") qt.qpa.egldeviceintegration: EGL device integration plugin keys (sorted): ("eglfs_mali") qt.qpa.egldeviceintegration: Trying to load device EGL integration "eglfs_mali" qt.qpa.egldeviceintegration: Using EGL device integration "eglfs_mali" qt.qpa.input: evdevkeyboard: Using device discovery qt.qpa.input: static device discovery for type QFlags(0x8) qt.qpa.input: Found matching devices () qt.qpa.input: evdevmouse: Using device discovery qt.qpa.input: static device discovery for type QFlags(0x1|0x2) qt.qpa.input: Found matching devices () qt.qpa.input: evdevtouch: Using device discovery qt.qpa.input: static device discovery for type QFlags(0x2|0x4) qt.qpa.input: Found matching devices () Unable to query physical screen size, defaulting to 100 dpi. To override, set QT_QPA_EGLFS_PHYSICAL_WIDTH and QT_QPA_EGLFS_PHYSICAL_HEIGHT (in millimeters). Failed to load libGLESv2 Aborted
The error is Failed to load libGLESv2, but here is my LD_LIBRARY_PATH
# export export LD_LIBRARY_PATH='/usr/local/lib:/usr/lib:/mnt/duino/lib:/mnt/duino/qt5/lib:/mnt/duino/build_expat/lib:/mnt/duino/build_dbus/lib' # ls /mnt/duino/lib/ libEGL.so libGLESv2.so libpng16.so libpng16.so.16.23.0 libz.so.1 libGLESv1_CM.so libmali.so libpng16.so.16 libz.so libz.so.1.2.8 #ls /mnt/duino/qt5/lib/ README libQt5DBus.so.5.5.1 libQt5OpenGL.so.5.5 libQt5Test.so.5 cmake libQt5EglDeviceIntegration.la libQt5OpenGL.so.5.5.1 libQt5Test.so.5.5 fonts libQt5EglDeviceIntegration.prl libQt5OpenGLExtensions.a libQt5Test.so.5.5.1 libQt5Bootstrap.a libQt5EglDeviceIntegration.so libQt5OpenGLExtensions.la libQt5Widgets.la libQt5Bootstrap.la libQt5EglDeviceIntegration.so.5 libQt5OpenGLExtensions.prl libQt5Widgets.prl libQt5Bootstrap.prl libQt5EglDeviceIntegration.so.5.5 libQt5PlatformSupport.a libQt5Widgets.so libQt5Concurrent.la libQt5EglDeviceIntegration.so.5.5.1 libQt5PlatformSupport.la libQt5Widgets.so.5 libQt5Concurrent.prl libQt5Gui.la libQt5PlatformSupport.prl libQt5Widgets.so.5.5 libQt5Concurrent.so libQt5Gui.prl libQt5PrintSupport.la libQt5Widgets.so.5.5.1 libQt5Concurrent.so.5 libQt5Gui.so libQt5PrintSupport.prl libQt5Xml.la libQt5Concurrent.so.5.5 libQt5Gui.so.5 libQt5PrintSupport.so libQt5Xml.prl libQt5Concurrent.so.5.5.1 libQt5Gui.so.5.5 libQt5PrintSupport.so.5 libQt5Xml.so libQt5Core.la libQt5Gui.so.5.5.1 libQt5PrintSupport.so.5.5 libQt5Xml.so.5 libQt5Core.prl libQt5Network.la libQt5PrintSupport.so.5.5.1 libQt5Xml.so.5.5 libQt5Core.so libQt5Network.prl libQt5Sql.la libQt5Xml.so.5.5.1 libQt5Core.so.5 libQt5Network.so libQt5Sql.prl libqtfreetype.a libQt5Core.so.5.5 libQt5Network.so.5 libQt5Sql.so libqtfreetype.prl libQt5Core.so.5.5.1 libQt5Network.so.5.5 libQt5Sql.so.5 libqtharfbuzzng.a libQt5DBus.la libQt5Network.so.5.5.1 libQt5Sql.so.5.5 libqtharfbuzzng.prl libQt5DBus.prl libQt5OpenGL.la libQt5Sql.so.5.5.1 libqtpcre.a libQt5DBus.so libQt5OpenGL.prl libQt5Test.la libqtpcre.prl libQt5DBus.so.5 libQt5OpenGL.so libQt5Test.prl pkgconfig libQt5DBus.so.5.5 libQt5OpenGL.so.5 libQt5Test.so
That seems libGLESv2 has been added in the LD_LIBRARY_PATH.
Besides, I wrote a HelloWorld using QDebug and it worked well. So, what is going wrong?
Question 2
When run with -platform linuxfb:
/mnt/duino/qt5/examples/widgets/widgets/analogclock # ./analogclock -platform linuxfb QIconvCodec::convertToUnicode: using Latin-1 for conversion, iconv_open failed QIconvCodec::convertFromUnicode: using Latin-1 for conversion, iconv_open failed qt.qpa.input: evdevkeyboard: Using device discovery qt.qpa.input: static device discovery for type QFlags(0x8) qt.qpa.input: Found matching devices () qt.qpa.input: evdevmouse: Using device discovery qt.qpa.input: static device discovery for type QFlags(0x1|0x2) qt.qpa.input: Found matching devices () qt.qpa.input: evdevtouch: Using device discovery qt.qpa.input: static device discovery for type QFlags(0x2|0x4) qt.qpa.input: Found matching devices ()
It just stopped here.
Here is my env variables.
export HOME='/root' export LD_LIBRARY_PATH='/usr/local/lib:/usr/lib:/mnt/duino/lib:/mnt/duino/qt5/lib:/mnt/duino/build_expat/lib:/mnt/duino/build_dbus/lib' export PATH='/usr/bin:/usr/sbin:/bin:/sbin' export QTDIR='/mnt/duino/qt5' export QT_INSTALL_PATH='/mnt/duino/qt5' export QT_LOGGING_RULES='qt.*=true' export QT_QPA_EGLFS_DEBUG='yes' export QT_QPA_EGLFS_DEPTH='32' export QT_QPA_EGLFS_FB='/dev/fb0' export QT_QPA_EGLFS_HEIGHT='720' export QT_QPA_EGLFS_INTEGRATION='eglfs_mali' export QT_QPA_EGLFS_WIDTH='1280' export QT_QPA_FONTDIR='/mnt/duino/qt5/lib' export QT_QPA_PLATFORM='linuxfb:fb=/dev/fb0,size=480x272,tty=/dev/tty0' export QT_QPA_PLATFORM_PLUGIN_PATH='/mnt/duino/qt5/plugins' export QT_QWS_DISPLAY='linuxFB:/dev/fb0' export QT_QWS_FONTDIR='/opt/qt/lib/fonts' export SHELL='/bin/sh' export TERM='vt102' export USER='root'
If anyone have any ideas, please tell me. Much thanks!!!