我正在使用appimage http://appimage.org将我的应用程序打包成独立的可删除文件。
我在debian测试lenny上做这个。
我的应用程序使用了很多开源库(qt,python pythonqt fftw hdf4 / 5 gsl netpbm qwt),使用 Qt4 一切正常。我可以在debian上编译我的应用程序并创建一个在mint上顺利运行的appdir图像(使用xfce)。
当我切换到 Qt5 时停止工作。
现在appimage在debian上运行,但不是薄荷,我得到了这个错误:
This application failed to start because it could not find or load the Qt platform plugin "xcb".
Available platform plugins are: eglfs, kms, linuxfb, minimal, minimalegl, offscreen, xcb.
Reinstalling the application may fix this problem.
Aborted
请注意,消息不一致:它说我缺少xcb
而不是可用。
我确实在我的应用usr/lib
树中复制了plugins目录。
我在主机apt-get install libx11-xcb1
上安装了xcb
我的AppRun文件如下所示:
#!/bin/bash
HERE="$(dirname "$(readlink -f "${0}")")"
cd "${HERE}/usr/"
export LD_LIBRARY_PATH="${HERE}/usr/lib/:${LD_LIBRARY_PATH}"
export PATH="${HERE}/usr/bin:${PATH}"
export QT_PLUGIN_PATH="${HERE}/usr/lib"
exec "${HERE}/usr/bin/Neutrino" "$@"
cd -
我错过了什么?
答案 0 :(得分:2)
许多Qt5应用程序(如Krita,Scribus和Subsurface)正在作为AppImages进行分发,因此绝对有可能。
可能你缺少一些需要捆绑在AppImage中的组件。特别是,Qt插件需要捆绑在AppImage中才能工作。
有关将Qt5.5应用程序打包为AppImage的示例,请参阅here。
请注意,通常建议使用旧的基本系统(如CentOS 6)进行编译,因为生成的AppImages将与更多的发行版兼容,而不仅仅是最新发行版。
如果您发布项目链接或在https://github.com/probonopd/AppImages/issues上打开问题,我可以为您提供更详细的说明。