probonopd / linuxdeployqt

Makes Linux applications self-contained by copying in the libraries and plugins that the application uses, and optionally generates an AppImage. Can be used for Qt and other applications
Other
2.22k stars 414 forks source link

Deploying FCEUX Emulator, cannot find xcb plugin #609

Closed ivanbistrovic closed 5 months ago

ivanbistrovic commented 6 months ago

Latest version of Fceux emulator uses Qt6 for its GUI and I am trying to run it on multiple computers without the need to install the dependencies on each on them through the package manager, to make it portable. So far it seems that qtdeploy creates folder lib and plugins and copies dependency libraries and qt plugins into these folders but when I run the binary, it cannot find xcb plugin. The resulting output I am getting is pasted below. Any tips would be appreciated.

Qt Info: Could not load the Qt platform plugin "xcb" in "" even though it was found. (:0, )
Qt Info: Could not load the Qt platform plugin "xcb" in "" even though it was found. (:0, )
Qt Fatal: This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.

Available platform plugins are: xcb, minimal, vnc, linuxfb, offscreen, vkkhrdisplay, minimalegl, eglfs.
 (:0, )

Qt Fatal: This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.

Available platform plugins are: xcb, minimal, vnc, linuxfb, offscreen, vkkhrdisplay, minimalegl, eglfs.
 (:0, )
Aborted (core dumped)
probonopd commented 6 months ago

Please upload the AppImage for analysis, thank you.

ivanbistrovic commented 5 months ago

Hi, since I am complete beginner with linuxdeploy, for testing and learning purposes I tried packing a simpler app that doesn't use QT, in my case it was Htop 3.3.0. I created a directory with proper structure that was created with make install DESTDIR=/home/user/htop-3.3.0/. I put all necessary Linuxdeploy executables in a single directory so that it looks like this:

linuxdeploy-plugin-appimage-x86_64.AppImage
linuxdeploy-plugin-appimage-x86_64.AppImage.zsync
linuxdeploy-plugin-qt-x86_64.AppImage
linuxdeploy-plugin-qt-x86_64.AppImage.zsync
linuxdeploy-x86_64.AppImage
linuxdeploy-x86_64.AppImage.zsync

After running $ ./linuxdeploy-x86_64.AppImage --appdir=/home/user/htop-3.3.0/ I get the following error: linuxdeploy version 1-alpha (git commit ID 2b73a21), GitHub actions build 260 built on 2024-01-09 16:46:33 UTC terminate called after throwing an instance of 'std::logic_error' what(): subprocess /home/user/LinuxDeploy/linuxdeploy-plugin-appimage-x86_64.AppImage.zsync --plugin-api-version failed with exit code 2

From here I don't know what is happening.

probonopd commented 5 months ago

Are you talking about https://github.com/linuxdeploy/linuxdeploy and https://github.com/linuxdeploy/linuxdeploy-plugin-qt in fact? Then please ask in those projects, as this here is about a different project. Thanks!