I have a arm64 device running Ubuntu20.04 Xwayland
I'm trying to run qt apps on it. The wayland and eglfs backends works, but it reports "qt.qpa.wayland: EGL not available". Use official demo quicknanobrowser for example:
firefly@firefly:~/build-webengine-5_15_2-Debug/quicknanobrowser$ ./quicknanobrowser -platform wayland
QML debugging is enabled. Only use this in a safe environment.
Warning: Ignoring XDG_SESSION_TYPE=wayland on Gnome. Use QT_QPA_PLATFORM=wayland to run on Wayland anyway.
qt.qpa.wayland: EGL not available
(quicknanobrowser:2956): GLib-GObject-WARNING **: 02:56:20.861: value "TRUE" of type 'gboolean' is invalid or out of range for property 'draw-as-radio' of type 'gboolean'
js: Uncaught (in promise) Never showed up.
And using wayland-egl it crashed:
firefly@firefly:~/build-webengine-5_15_2-Debug/quicknanobrowser$ ./quicknanobrowser -platform wayland-egl
QML debugging is enabled. Only use this in a safe environment.
Warning: Ignoring XDG_SESSION_TYPE=wayland on Gnome. Use QT_QPA_PLATFORM=wayland to run on Wayland anyway.
qt.qpa.wayland: EGL not available
Cannot find EGLConfig, returning null config
QWaylandGLContext: failed to create EGLContext, error=3008
WebEngineContext used before QtWebEngine::initialize() or OpenGL context creation failed.
(quicknanobrowser:3312): GLib-GObject-WARNING **: 02:57:47.974: value "TRUE" of type 'gboolean' is invalid or out of range for property 'draw-as-radio' of type 'gboolean'
Cannot find EGLConfig, returning null config
Cannot find EGLConfig, returning null config
QWaylandGLContext: failed to create EGLContext, error=3008
Failed to create OpenGL context for format QSurfaceFormat(version 2.0, options QFlags<QSurfaceFormat::FormatOption>(), depthBufferSize 24, redBufferSize -1, greenBufferSize -1, blueBuff
erSize -1, alphaBufferSize -1, stencilBufferSize 8, samples -1, swapBehavior QSurfaceFormat::DoubleBuffer, swapInterval 1, colorSpace QSurfaceFormat::DefaultColorSpace, profile QSurfac
eFormat::NoProfile)
[3344:3344:0100/000000.429392:ERROR:broker_posix.cc(43)] Invalid node channel message
Aborted (core dumped)
firefly@firefly:~/build-webengine-5_15_2-Debug/quicknanobrowser$
libegl and libgles2 are installed, and --opengl es2 is added when building QT 5.15.2, here's the part of config.summary:
OpenGL:
Desktop OpenGL ....................... no
OpenGL ES 2.0 ........................ yes
OpenGL ES 3.0 ........................ yes
OpenGL ES 3.1 ........................ yes
OpenGL ES 3.2 ........................ yes
Qt Wayland Drivers:
EGL .................................... yes
Raspberry Pi ........................... no
XComposite EGL ......................... yes
XComposite GLX ......................... no
DRM EGL ................................ yes
libhybris EGL .......................... no
Linux dma-buf server buffer integration . yes
Vulkan-based server buffer integration . yes
Shm emulation server buffer integration . yes
Qt Wayland Client Shell Integrations:
xdg-shell .............................. yes
xdg-shell unstable v5 (deprecated) ..... yes
xdg-shell unstable v6 .................. yes
ivi-shell .............................. yes
wl-shell (deprecated) .................. yes
Qt Wayland Client ........................ yes
Qt Wayland Compositor .................... yes
Qt Wayland Compositor Layer Plugins:
VSP2 hardware layer integration ........ no
How to make it work with wayland-egl ? Thanks in advance