AppImage file not generated?
I created a simple demo project based on Qt6.3.1 on ubuntu20.04, and created a directory tree manually like this
├── bin
│ └── untitled
├── lib
└── share
├── applications
│ └── untitled.desktop
└── icons
└── hicolor
└── 256x256
└── apps
└── logo.png
my .desktop file was like
[Desktop Entry]
Type=Application
Name=Amazing Qt App
Comment=The best Qt Application Ever
Exec=../../bin/untitled
Icon=../icons/hicolor/256x256/apps/logo
Categories=Office;
after that , I used linuxdeployqt like this
linuxdeployqt ./Untitled/usr/share/applications/untitled.desktop -verbose=2
As a result, some files was generated, and some Qt libs were copied into the usr/lib directory.
├──AppRun
├──untitled.desktop
└── usr
├── bin
│ └── untitled
│ └── qt.conf
├── lib
│ └── libicudata.so.56
│ └── libicui18n.so.56
│ └── libicuuc.so.56
│ └── libQt6Core.so.6f
│ └── libQt6DBus.so.6
│ └── libQt6Gui.so.6
│ └── libQt6Widgets.so.6
└── share
├── applications
│ └── untitled.desktop
└── icons
└── hicolor
└── 256x256
└── apps
└── logo.png
I could run AppRun in terminal(with a warning, libEGL warning: pci id for fd 26: 1ab8:0010, driver (null)
pci id for fd 27: 1ab8:0010, driver (null)), but nothing happened with double-clicking, Also I didn't see any files with suffix of .AppImage was generated. the whole bundle still looked like an ordinary directory but an executable one.
here is the log.
linuxdeployqt 8 (commit d6ac06c), build <local dev build> built on 2022-08-16 07:51:04 UTC
Desktop file as first argument: "./Untitled/usr/share/applications/untitled.desktop"
desktopExecEntry: "untitled"
desktopIconEntry: "../icons/hicolor/256x256/apps/logo"
Found binary from desktop file: "/home/parallels/Desktop/build-untitled-Desktop_Qt_6_3_1_GCC_64bit-Release/Untitled/usr/bin/untitled"
FHS-like mode with PREFIX, fhsPrefix: "/home/parallels/Desktop/build-untitled-Desktop_Qt_6_3_1_GCC_64bit-Release/Untitled/usr"
app-binary: "/home/parallels/Desktop/build-untitled-Desktop_Qt_6_3_1_GCC_64bit-Release/Untitled/usr/bin/untitled"
appDirPath: "/home/parallels/Desktop/build-untitled-Desktop_Qt_6_3_1_GCC_64bit-Release/Untitled"
relativeBinPath: "usr/bin/untitled"
Keeping existing AppRun
Found icons from desktop file: ()
Log: Deploying the following libraries: ("/home/parallels/Desktop/build-untitled-Desktop_Qt_6_3_1_GCC_64bit-Release/Untitled/usr/bin/untitled")
Log: copied: "/home/parallels/Qt/6.3.1/gcc_64/lib/libQt6Widgets.so.6"
Log: to "/home/parallels/Desktop/build-untitled-Desktop_Qt_6_3_1_GCC_64bit-Release/Untitled/usr/lib///libQt6Widgets.so.6"
Log: Checking rpath in "/home/parallels/Desktop/build-untitled-Desktop_Qt_6_3_1_GCC_64bit-Release/Untitled/usr/lib/libQt6Widgets.so.6"
Log: Changing rpath in "/home/parallels/Desktop/build-untitled-Desktop_Qt_6_3_1_GCC_64bit-Release/Untitled/usr/lib/libQt6Widgets.so.6" to "$ORIGIN"
Log: Setting deploymentInfo.qtPath to: "/home/parallels/Qt/6.3.1/gcc_64/lib/"
Log: copied: "/home/parallels/Qt/6.3.1/gcc_64/lib/libQt6Core.so.6"
Log: to "/home/parallels/Desktop/build-untitled-Desktop_Qt_6_3_1_GCC_64bit-Release/Untitled/usr/lib///libQt6Core.so.6"
Log: Checking rpath in "/home/parallels/Desktop/build-untitled-Desktop_Qt_6_3_1_GCC_64bit-Release/Untitled/usr/lib/libQt6Core.so.6"
Log: Changing rpath in "/home/parallels/Desktop/build-untitled-Desktop_Qt_6_3_1_GCC_64bit-Release/Untitled/usr/lib/libQt6Core.so.6" to "$ORIGIN"
Log: copied: "/home/parallels/Qt/6.3.1/gcc_64/lib/libQt6Gui.so.6"
Log: to "/home/parallels/Desktop/build-untitled-Desktop_Qt_6_3_1_GCC_64bit-Release/Untitled/usr/lib///libQt6Gui.so.6"
Log: Checking rpath in "/home/parallels/Desktop/build-untitled-Desktop_Qt_6_3_1_GCC_64bit-Release/Untitled/usr/lib/libQt6Gui.so.6"
Log: Changing rpath in "/home/parallels/Desktop/build-untitled-Desktop_Qt_6_3_1_GCC_64bit-Release/Untitled/usr/lib/libQt6Gui.so.6" to "$ORIGIN"
Log: copied: "/home/parallels/Qt/6.3.1/gcc_64/lib/libicui18n.so.56"
Log: to "/home/parallels/Desktop/build-untitled-Desktop_Qt_6_3_1_GCC_64bit-Release/Untitled/usr/lib///libicui18n.so.56"
Log: Checking rpath in "/home/parallels/Desktop/build-untitled-Desktop_Qt_6_3_1_GCC_64bit-Release/Untitled/usr/lib/libicui18n.so.56"
Log: Removing absolute rpath of "/home/qt/icu_install/lib" in "/home/parallels/Desktop/build-untitled-Desktop_Qt_6_3_1_GCC_64bit-Release/Untitled/usr/lib/libicui18n.so.56"
Log: Changing rpath in "/home/parallels/Desktop/build-untitled-Desktop_Qt_6_3_1_GCC_64bit-Release/Untitled/usr/lib/libicui18n.so.56" to "$ORIGIN"
Log: copied: "/home/parallels/Qt/6.3.1/gcc_64/lib/libicuuc.so.56"
Log: to "/home/parallels/Desktop/build-untitled-Desktop_Qt_6_3_1_GCC_64bit-Release/Untitled/usr/lib///libicuuc.so.56"
Log: Checking rpath in "/home/parallels/Desktop/build-untitled-Desktop_Qt_6_3_1_GCC_64bit-Release/Untitled/usr/lib/libicuuc.so.56"
Log: Removing absolute rpath of "/home/qt/icu_install/lib" in "/home/parallels/Desktop/build-untitled-Desktop_Qt_6_3_1_GCC_64bit-Release/Untitled/usr/lib/libicuuc.so.56"
Log: Changing rpath in "/home/parallels/Desktop/build-untitled-Desktop_Qt_6_3_1_GCC_64bit-Release/Untitled/usr/lib/libicuuc.so.56" to "$ORIGIN"
Log: copied: "/home/parallels/Qt/6.3.1/gcc_64/lib/libicudata.so.56"
Log: to "/home/parallels/Desktop/build-untitled-Desktop_Qt_6_3_1_GCC_64bit-Release/Untitled/usr/lib///libicudata.so.56"
Log: Checking rpath in "/home/parallels/Desktop/build-untitled-Desktop_Qt_6_3_1_GCC_64bit-Release/Untitled/usr/lib/libicudata.so.56"
Log: Removing absolute rpath of "/home/qt/icu_install/lib" in "/home/parallels/Desktop/build-untitled-Desktop_Qt_6_3_1_GCC_64bit-Release/Untitled/usr/lib/libicudata.so.56"
Log: Changing rpath in "/home/parallels/Desktop/build-untitled-Desktop_Qt_6_3_1_GCC_64bit-Release/Untitled/usr/lib/libicudata.so.56" to "$ORIGIN"
Log: copied: "/home/parallels/Qt/6.3.1/gcc_64/lib/libQt6DBus.so.6"
Log: to "/home/parallels/Desktop/build-untitled-Desktop_Qt_6_3_1_GCC_64bit-Release/Untitled/usr/lib///libQt6DBus.so.6"
Log: Checking rpath in "/home/parallels/Desktop/build-untitled-Desktop_Qt_6_3_1_GCC_64bit-Release/Untitled/usr/lib/libQt6DBus.so.6"
Log: Changing rpath in "/home/parallels/Desktop/build-untitled-Desktop_Qt_6_3_1_GCC_64bit-Release/Untitled/usr/lib/libQt6DBus.so.6" to "$ORIGIN"
Log: Checking rpath in "/home/parallels/Desktop/build-untitled-Desktop_Qt_6_3_1_GCC_64bit-Release/Untitled/usr/bin/untitled"
Log: Changing rpath in "/home/parallels/Desktop/build-untitled-Desktop_Qt_6_3_1_GCC_64bit-Release/Untitled/usr/bin/untitled" to "$ORIGIN/../lib:$ORIGIN/lib"
Log: Deploying plugins from "/home/parallels/Qt/6.3.1/gcc_64/plugins"
Log: pluginList after having detected hopefully all required plugins: ()
Log: Created configuration file: "/home/parallels/Desktop/build-untitled-Desktop_Qt_6_3_1_GCC_64bit-Release/Untitled/usr/bin/qt.conf"
So far I have never touched Qt 6 yet. linuxdeployqt most likely can't handle it properly?
No,it can’t. I have tried it on Ubuntu 18.04 with Qt5.9(why 5.9? here is the reason), it works well. I really hope it can support Qt6. because some critical bugs have been fixed in the latest version. Besides, a lot of new APIs have been included, especially in QtWebEngihe module.
Qt 6 support is on its way to be merged, see #495 and #541
I've faced the same issue (with qt5). From strace, the last linuxdeployqt action was a access to AppDir/usr/share/doc/libc6/copyright
...
stat("/home/****/*****/AppDir/usr/share/doc/libc6/copyright", 0x7ffd0e0c9be0) = -1 ENOENT (Aucun fichier ou dossier de ce type)
exit_group(1)
mkdir -p AppDir/usr/share/doc/libc6
touch AppDir/usr/share/doc/libc6/copyright
solves the problem
The question is, why doesn't linuxdeployqt deploy that file automatically...
Same issue with linuxdeployqt (commit e83eeb7), build 53 built on 2023-08-28 23:47:07 UTC
Workaround is touch AppDir/usr/share/doc/libc6/copyright