https://bugs.kde.org/show_bug.cgi?id=382944
            Bug ID: 382944
           Summary: krita-3.1.4-x86_64.appimage fails to run with 'could
                    not find or load the Qt platform plugin "xcb"'
           Product: krita
           Version: 3.1.4
          Platform: Appimage
                OS: Linux
            Status: UNCONFIRMED
          Severity: normal
          Priority: NOR
         Component: general
          Assignee: krita-bugs-n...@kde.org
          Reporter: s...@smbolton.com
  Target Milestone: ---

Attempting to run krita-3.1.4-x86_64.appimage on my Slackware 14.2-current
x86_64 system fails with:

```
This application failed to start because it could not find or load the Qt
platform plugin "xcb"
in "".

Available platform plugins are: minimal, offscreen, xcb.

Reinstalling the application may fix this problem.
Aborted
```

Running 'QT_DEBUG_PLUGINS=1 ./krita-3.1.4-x86_64.appimage' reveals the
following:

```
QLibraryPrivate::loadPlugin failed on
"/tmp/.mount_LTAl95/usr/bin/plugins/platforms/libqxcb.so" : "Cannot load
library /tmp/.mount_LTAl95/usr/bin/plugins/platforms/libqxcb.so:
(./lib/libz.so.1: version `ZLIB_1.2.9' not found (required by
/usr/lib64/libpng16.so.16))"
```

So the problem is that libqxcb.so (which is contained in the AppImage) links to
libpng16.so.16 (which is *not* in the AppImage), which links to libz.so.1
(which *is* in the AppImage).

I am not familiar with AppImage, but I am surprised it does not contain some
sort of automated check in the build process, to prevent just this situation
where linked-to libraries outside the AppImage link to libraries that can be
found inside the AppImage. The in-out-in linkage situation is an open door to
this sort of version mismatch.

The fix would be to include libpng16.so.16 in the AppImage. A workaround on my
system is to link to an older version of libpng16.so.16:

```
mkdir /home/smbolton/t
ln -s /usr/lib64/libpng16.so.16.27.0 /home/smbolton/t/libpng16.so.16
LD_LIBRARY_PATH=/home/smbolton/t ./krita-3.1.4-x86_64.appimage
```

Thanks!

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to