Skip to content

Error seen after removing x11 and adding Wayland/Weston compositor to Poky Linux ARMv8 build #158

Open

Description

@mdear

Hello,

Having troubles running linuxdeploy-qt after removing x11 and adding wayland with weston compositor to my Yocto Poky Kirkstone ATMv8 build

I got your whole linuxdeploy toolchain with qt input and appimage qt output plugins working on , but then when I tried to run the AppImage on target, I realized it was looking for x11 binaries, which do not exist on our CrossControl v700 / v1200 screens since they are based on Wayland instead of X11 and use a Weston compositor.

So, I rebuilt my Poky binary with the following changes to $POKY_ROOT/build/conf/local.conf (after completely removing the build/tmp directory tree):

ERROR: Cannot deploy non-existing library file: /usr/lib/plugins/platforms/libqxcb.so

# Set the distro to work with Wayland and remove all X11 support since these
# are incompatible technologies and our v700/v1200 features use Wayland.
DISTRO_FEATURES:remove = "x11"
DISTRO_FEATURES:append = " wayland"
PACKAGECONFIG:remove:pn-qtbase = "x11"
PACKAGECONFIG:append:pn-qtbase = " wayland"

And now I'm getting the following error from the qt plugin:

...

-- Running input plugin: qt --
[qt/stderr] linuxdeploy-plugin-qt version 1-alpha (git commit ID 52d9a4c), GitHub actions build 130 built on 2024-01-09 17:22:58 UTC
[qt/stdout] Using qmake: /usr/bin/qmake
[qt/stdout]
[qt/stdout] Using Qt version:  6.5.3  ( 6 )
[qt/stdout]   libEGL.so.1  libGLESv2.so.2  libQt6Core.so.6  libQt6DBus.so.6  libQt6Gui.so.6  libQt6Network.so.6  libQt6Qml.so.6  libc.so.6  libdbus-1.so.3  libdrm.so.2  libexpat.so.1  libffi.so.8  libfontconfig.so.1  libfreetype.so.6  libgbm.so.1  libgcc_s.so.1  libglapi.so.0  libglib-2.0.so.0  libharfbuzz.so.0  libicudata.so.70  libicui18n.so.70  libicuuc.so.70  libm.so.6  libpcre.so.1  libpcre2-16.so.0  libpng16.so.16  libpthread.so.0  libstdc++.so.6  libuuid.so.1  libwayland-client.so.0  libwayland-server.so.0  libxkbcommon.so.0  libz.so.1  libzstd.so.1
[qt/stdout] Found Qt modules: core dbus gui network qml
[qt/stdout] Extra Qt modules:  
[qt/stdout]
[qt/stdout] QT_INSTALL_LIBS: /usr/lib
[qt/stdout] Prepending QT_INSTALL_LIBS path to $LD_LIBRARY_PATH, new $LD_LIBRARY_PATH: /usr/lib:/lib:/usr/lib:/home/ccs/Qt/Projects/CortexBuilds/glibc_2.35_out/lib:/home/ccs/Qt/Projects/CortexBuilds/V700/Qt-6.4.1/lib:/home/ccs/Qt/Projects/CortexBuilds/glibc_2.34_out/lib:/home/ccs/Qt/Projects/CortexBuilds/V700/sysroots/cortexa35-poky-linux/lib:/home/ccs/Qt/Projects/CortexBuilds/V700/sysroots/cortexa35-poky-linux/usr/lib:/home/ccs/Qt/Projects/CortexBuilds/lib
[qt/stdout] Prepending QT_INSTALL_BINS and QT_INSTALL_LIBEXECS paths to $PATH, new $PATH: /usr/bin:/usr/libexec:/opt/bin:/bin:/usr/bin:/home/ccs/Qt/Projects/CortexBuilds/bin
[qt/stdout]
[qt/stdout] -- Deploying module: core --
[qt/stdout]
[qt/stdout] -- Deploying module: dbus --
[qt/stdout]
[qt/stdout] -- Deploying module: gui --
[qt/stdout] Deploying platform plugins
[qt/stdout] ERROR: Cannot deploy non-existing library file: /usr/lib/plugins/platforms/libqxcb.so
ERROR: Failed to run plugin: qt (exit code: 1)
ccs@qemuarm64:~/Qt/Projects/CortexBuilds/bin$

Any hints on how to resolve ?

Thanks,

Activity

  1. mdear commented on Feb 21, 2024

    @mdear
    Author

    I tried defining the following environment variable before invoking the linuxdeploy toolchain:

    export QT_QPA_PLATFORM=wayland

  2. mdear commented on Feb 22, 2024

    @mdear
    Author

    I'm stuck again.
    I'm failing at the same point on my QEMU Yocto Poky Kirkstone build with x11 stripped out and wayland/weston added (and rebuilt completely from scratch)

    I'm also running the packaging script on a physical ARMv8 device (CrossControl V700) and am also getting stopped at the exact same point.

    I'm scratching my head trying to figure out why the linuxdeploy-plugin-qt has any kind of X11 dependencies.

  3. mdear commented on Feb 23, 2024

    @mdear
    Author

    I hacked my way around this, but hope for a fix that will allow a system with no x11 support to not expect x11 libraries.

  4. mdear commented on Feb 25, 2024

    @mdear
    Author

    I finally got an AppImage that works on my ARMv8 target, but I had to do some manual packaging steps. This toolchain got me 95% of the way there, though, so I'm appreciative !

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions