Skip to content
RazZziel edited this page Dec 9, 2014 · 2 revisions

Qt loads some libraries at runtime that copyMissingLibraries won’t find, findMissingLibraries will indeed find them, but they can’t be just copied to some path inside your LD_LIBRARY_PATH. These libraries need to be in a specific directory next to the executable. For example:

Most applications will need some imageformats plugins:

$ mkdir -p usr/lib/plugins/imageformats/
$ cp /usr/lib/qt/plugins/imageformats/{libqgif.so,libqico.so,libqjpeg.so,libqsvg.so,libqtiff.so} usr/lib/plugins/imageformats/

Additionally, Qt5 applications will need platforms plugins:

$ ./AppRun
This application failed to start because it could not find or load the Qt platform plugin "xcb".
$ mkdir -p usr/lib/plugins/platforms/
$ cp /usr/lib/qt/plugins/platforms/libqxcb.so usr/lib/plugins/platforms/

We copy inside the AppDir all the dependencies for these new libraries

$ copyMissingLibraries usr/lib/plugins/*/*

And ensure inside the AppRun script that these plugins are found by the application

export QT_PLUGIN_PATH="$APPDIR/usr/lib/plugins/"