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

Cannot build wayland-egl driver



  • I'm attempting to build qt5-wayland from source on Linux. I build mesa with the wayland platform, I have wayland{-protocols}, libxkbcommon installed, I see no obvious failures at any configure check - indeed, qt5-wayland says that I pass every check - and yet the wayland-egl driver is disabled! I'm uncertain how to progress. There doesn't seem to be any obvious way of forcing qt5-wayland to build it. Below are how I'm building mesa, qt5, and qt5-wayland and their respective outputs.

    Mesa:
    meson
    --prefix=/usr
    --sysconfdir=/etc
    --mandir=/usr/share/man
    --localstatedir=/var
    --buildtype=release
    -Db_lto=true
    -Dplatforms=wayland,drm
    -Ddri-drivers=i965
    -Dgallium-drivers=i915
    -Dvulkan-drivers=intel
    -Dglx=disabled
    -Dglvnd=true
    . build

    Build-time dependency wayland-scanner found: YES 1.18.0
    Program /usr/bin/wayland-scanner found: YES
    Run-time dependency wayland-protocols found: YES 1.20
    Run-time dependency wayland-client found: YES 1.18.0
    Run-time dependency wayland-server found: YES 1.18.0
    Run-time dependency wayland-egl-backend found: YES 3
    Library sensors found: NO
    Program nm found: YES
    Program symbols-check.py found: YES
    Program install_megadrivers.py found: YES
    WARNING: Gettext not found, all translation targets will be ignored.
    Program /tmp/build-17323/mesa/bin/install_megadrivers.py found: YES (/usr/bin/python /tmp/build-17323/mesa/bin/install_megadrivers.py)
    Checking for function "mincore" : YES
    Program /tmp/build-17323/mesa/bin/install_megadrivers.py found: YES (/usr/bin/python /tmp/build-17323/mesa/bin/install_megadrivers.py)
    Configuring xa_tracker.h using configuration
    Message: Configuration summary:

        prefix:          /usr
        libdir:          lib
        includedir:      include
        
        OpenGL:          yes (ES1: yes ES2: yes)
        OSMesa:          no
        
        DRI platform:    drm
        DRI drivers:     i965
        DRI driver dir:  /usr/lib/dri
        
        EGL:             yes
        EGL drivers:     builtin:egl_dri2 builtin:egl_dri3
        GBM:             yes
        EGL/Vulkan/VL platforms:   wayland drm
        
        Vulkan drivers:  intel
        Vulkan ICD dir:  share/vulkan/icd.d
        
        llvm:            yes
        llvm-version:    10.0.1
        
        Gallium drivers: i915
        Gallium st:      mesa xa
        HUD lmsensors:   no
        
        Shared-glapi:    yes
    

    Build targets in project: 169

    Qt5:
    ./configure
    -confirm-license
    -opensource
    -prefix /usr
    -docdir /usr/share/doc/qt
    -headerdir /usr/include/qt
    -archdatadir /usr/lib/qt
    -datadir /usr/share/qt
    -sysconfdir /etc/xdg
    -examplesdir /usr/share/doc/qt/examples
    -nomake examples
    -nomake tests
    -optimized-qmake
    -platform linux-clang-libc++
    -no-libudev
    -no-separate-debug-info
    -no-pch
    -no-dbus
    -no-accessibility
    -no-gtk
    -no-glib
    -system-libjpeg
    -system-libpng
    -system-sqlite
    -system-zlib
    -system-freetype
    -system-harfbuzz
    -silent

    Creating qmake...
    Done.
    Info: creating cache file /tmp/build-18343/qt5/.qmake.cache
    Info: creating stash file /tmp/build-18343/qt5/.qmake.stash

    This is the Qt Open Source Edition.

    You have already accepted the terms of the Open Source license.

    Running configuration tests...
    Checking for machine tuple... yes
    Checking for valid makespec... yes
    Checking for target architecture... x86_64
    Checking for SSE2 instructions... yes
    Checking for AES new instructions... yes
    Checking for alloca() in alloca.h... yes
    Checking for SSE3 instructions... yes
    Checking for SSSE3 instructions... yes
    Checking for SSE4.1 instructions... yes
    Checking for SSE4.2 instructions... yes
    Checking for AVX instructions... yes
    Checking for AVX2 instructions... yes
    Checking for AVX512 F instructions... yes
    Checking for AVX512 BW instructions... yes
    Checking for AVX512 CD instructions... yes
    Checking for AVX512 DQ instructions... yes
    Checking for AVX512 ER instructions... yes
    Checking for AVX512 IFMA instructions... yes
    Checking for AVX512 PF instructions... yes
    Checking for AVX512 VBMI instructions... yes
    Checking for AVX512 VL instructions... yes
    Checking for C++14 support... yes
    Checking for C++17 support... yes
    Checking for C99 support... yes
    Checking for C11 support... yes
    Checking for pkg-config... yes
    Checking for dlopen()... yes
    Checking for new dtags support... yes
    Checking for F16C instructions... yes
    Checking for D-Bus >= 1.2 (host)... yes
    Checking for Support for Intel Control-flow Enforcement Technology... no
    Checking for POSIX fallocate()... yes
    Checking for RDRAND instruction... yes
    Checking for RDSEED instruction... yes
    Checking for symbol visibility support... yes
    Checking for -Bsymbolic-functions support... yes
    Checking for SHA new instructions... yes
    Checking for Signaling NaN for doubles... yes
    Checking for STL compatibility... yes
    Checking for zlib... yes
    Checking for Intrinsics without -mXXX argument... yes
    Checking for Zstandard... no
    Checking for clock_gettime()... yes
    Checking for POSIX monotonic clock... yes
    Checking for C++11 <future>... yes
    Checking for eventfd... yes
    Checking for futimens()... yes
    Checking for getauxval()... yes
    Checking for getentropy()... yes
    Checking for GNU libc... no
    Checking for POSIX iconv... yes
    Checking for ICU... no
    Checking for inotify... yes
    Checking for SysV IPC... yes
    Checking for linkat()... yes
    Checking for ppoll()... yes
    Checking for PCRE2... no
    Checking for renameat2()... no
    Checking for slog2... no
    Checking for statx() in libc... no
    Checking for 64 bit atomics... yes
    Checking for DoubleConversion... no
    Checking for O_CLOEXEC... yes
    Checking for C++11 <random>... yes
    Checking for working std::atomic for function pointers... yes
    Checking for OpenSSL Headers... yes
    Checking for DTLS support in OpenSSL... no
    Checking for getifaddrs()... yes
    Checking for KRB5 GSSAPI Support... no
    Checking for IPv6 ifname... yes
    Checking for Linux AF_NETLINK sockets... yes
    Checking for OCSP stapling support in OpenSSL... yes
    Checking for Desktop OpenGL... no
    Checking for OpenGL ES 2.0... yes
    Checking for KMS... yes
    Checking for DRM Atomic API... yes
    Checking for EGL... no
    Checking for evdev... yes
    Checking for FreeType... yes
    Checking for Fontconfig... yes
    Checking for GBM... yes
    Checking for LinuxFB... yes
    Checking for mtdev... yes
    Checking for OpenGL ES 3.0... yes
    Checking for OpenGL ES 3.1... yes
    Checking for OpenGL ES 3.2... yes
    Checking for OpenVG... no
    Checking for default QPA platform... xcb
    Checking for HarfBuzz... yes
    Checking for libjpeg... yes
    Checking for libpng... yes
    Checking for libmd4c... no
    Checking for XCB >= 1.11... no
    Checking for tslib... no
    Checking for Vulkan... no
    Checking for XLib... no
    Checking for xkbcommon >= 0.5.0... yes
    Checking for xkbcommon-x11... no
    Checking for CUPS... no
    Checking for DB2 (IBM)... no
    Checking for InterBase... no
    Checking for MySQL... no
    Checking for OCI (Oracle)... no
    Checking for ODBC... no
    Checking for PostgreSQL... no
    Checking for SQLite (version 2)... no
    Checking for TDS (Sybase)... no
    Checking for SQLite (version 3)... yes
    Done running configuration tests.

    Configure summary:

    Build type: linux-clang-libc++ (x86_64, CPU features: mmx sse sse2)
    Compiler: clang 10.0.1
    Configuration: sse2 aesni sse3 ssse3 sse4_1 sse4_2 avx avx2 avx512f avx512bw avx512cd avx512dq avx512er avx512ifma avx512pf avx512vbmi avx512vl compile_examples enable_new_dtags f16c largefile rdrnd rdseed shani silent x86SimdAlways shared shared rpath release c++11 c++14 c++17 c++1z concurrent reduce_exports reduce_relocations release_tools stl
    Build options:
    Mode ................................... release; optimized tools
    Optimize release build for size ........ no
    Building shared libraries .............. yes
    Using C standard ....................... C11
    Using C++ standard ..................... C++17
    Using ccache ........................... no
    Using new DTAGS ........................ yes
    Relocatable ............................ yes
    Using precompiled headers .............. no
    Using LTCG ............................. no
    Target compiler supports:
    SSE .................................. SSE2 SSE3 SSSE3 SSE4.1 SSE4.2
    AVX .................................. AVX AVX2
    AVX512 ............................... F ER CD PF DQ BW VL IFMA VBMI
    Other x86 ............................ AES F16C RDRAND SHA
    Intrinsics without -mXXX option ...... yes
    Build parts ............................ libs tools
    Qt modules and options:
    Qt Concurrent .......................... yes
    Qt D-Bus ............................... no
    Qt D-Bus directly linked to libdbus .... no
    Qt Gui ................................. yes
    Qt Network ............................. yes
    Qt Sql ................................. yes
    Qt Testlib ............................. yes
    Qt Widgets ............................. yes
    Qt Xml ................................. yes
    Support enabled for:
    Using pkg-config ....................... yes
    udev ................................... no
    Using system zlib ...................... yes
    Zstandard support ...................... no
    Qt Core:
    DoubleConversion ....................... yes
    Using system DoubleConversion ........ no
    GLib ................................... no
    iconv .................................. yes
    ICU .................................... no
    Built-in copy of the MIME database ..... yes
    Tracing backend ........................ <none>
    Logging backends:
    journald ............................. no
    syslog ............................... no
    slog2 ................................ no
    PCRE2 .................................. yes
    Using system PCRE2 ................... no
    Qt Network:
    getifaddrs() ........................... yes
    IPv6 ifname ............................ yes
    libproxy ............................... no
    Linux AF_NETLINK ....................... yes
    OpenSSL ................................ yes
    Qt directly linked to OpenSSL ........ no
    OpenSSL 1.1 ............................ yes
    DTLS ................................... no
    OCSP-stapling .......................... yes
    SCTP ................................... no
    Use system proxies ..................... yes
    GSSAPI ................................. no
    Qt Gui:
    Accessibility .......................... no
    FreeType ............................... yes
    Using system FreeType ................ yes
    HarfBuzz ............................... yes
    Using system HarfBuzz ................ yes
    Fontconfig ............................. yes
    Image formats:
    GIF .................................. yes
    ICO .................................. yes
    JPEG ................................. yes
    Using system libjpeg ............... yes
    PNG .................................. yes
    Using system libpng ................ yes
    Text formats:
    HtmlParser ........................... yes
    CssParser ............................ yes
    OdfWriter ............................ yes
    MarkdownReader ....................... yes
    Using system libmd4c ............... no
    MarkdownWriter ....................... yes
    EGL .................................... no
    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
    Features used by QPA backends:
    evdev .................................. yes
    libinput ............................... no
    INTEGRITY HID .......................... no
    mtdev .................................. yes
    tslib .................................. no
    xkbcommon .............................. yes
    X11 specific:
    XLib ................................. no
    XCB Xlib ............................. no
    EGL on X11 ........................... no
    xkbcommon-x11 ........................ no
    QPA backends:
    DirectFB ............................... no
    EGLFS .................................. no
    LinuxFB ................................ yes
    VNC .................................... yes
    Qt Sql:
    SQL item models ........................ yes
    Qt Widgets:
    GTK+ ................................... no
    Styles ................................. Fusion Windows
    Qt PrintSupport:
    CUPS ................................... no
    Qt Sql Drivers:
    DB2 (IBM) .............................. no
    InterBase .............................. no
    MySql .................................. no
    OCI (Oracle) ........................... no
    ODBC ................................... no
    PostgreSQL ............................. no
    SQLite2 ................................ no
    SQLite ................................. yes
    Using system provided SQLite ......... yes
    TDS (Sybase) ........................... no
    Qt Testlib:
    Tester for item models ................. yes

    Qt5-wayland:
    qmake

    -> qt5-wayland Starting build
    Info: creating stash file /tmp/build-16006/qt5-wayland/.qmake.stash
    Info: creating cache file /tmp/build-16006/qt5-wayland/.qmake.cache

    Running configuration tests...
    Checking for Wayland client library... yes
    Checking for Wayland cursor library... yes
    Checking for wayland-scanner... yes
    Checking for Wayland EGL library... yes
    Checking for wayland-server... yes
    Done running configuration tests.

    Configure summary:

    Qt Wayland Drivers:
    EGL .................................... no
    Raspberry Pi ........................... no
    XComposite EGL ......................... no
    XComposite GLX ......................... no
    DRM EGL ................................ no
    libhybris EGL .......................... no
    Linux dma-buf server buffer integration . no
    Vulkan-based server buffer integration . no
    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

    Qt is now configured for building. Just run 'make'.
    Once everything is built, you must run 'make install'.
    Qt will be installed into '/usr'.

    Prior to reconfiguration, make sure you remove any leftovers from
    the previous build.


Log in to reply