Build the AppImage?

Hello,

Would you mind clarifying how to get a fresh AppImage build on Linux?

Thanks!

You can find the script generating the AppImage in the build folder of sources.

I spot it, but it fails. As I’m not keen on meson/ninja, I wonder if this is about a missing companion tool or if I miss something else:

./build/appimage/generate.sh
The Meson build system
Version: 0.45.1
Source dir: /src
Build dir: /src/build/appimage/build
Build type: native build

meson.build:250:27: ERROR: lexer
opt_var.add_cmake_defines({‘BUILD_SHARED_LIBS’: false})

I think your meson version is too old.
We asked:
meson_version: '>=0.56.0'

Oh didn’t notice that. I’m using a Dockerized ubuntu, I’ll check for newer version of meson. Thanks a lot!

Good version indeed helped. Thanks!
Yet, I still got an issue, but I suppose it might be related to Docker environment; here’s log for information (notice that I added a set -x in generate.sh script).

[…]

+ for so in $(find     appdir/usr/lib/x86_64-linux-gnu/gdk-pixbuf-*/*/loaders     -name \*.so)
+ linuxdeployqtargs+=("-executable=$(readlink -f "$so")")
++ readlink -f appdir/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-ico.so
+ for so in $(find     appdir/usr/lib/x86_64-linux-gnu/gdk-pixbuf-*/*/loaders     -name \*.so)
+ linuxdeployqtargs+=("-executable=$(readlink -f "$so")")
++ readlink -f appdir/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-xpm.so
+ for so in $(find     appdir/usr/lib/x86_64-linux-gnu/gdk-pixbuf-*/*/loaders     -name \*.so)
+ linuxdeployqtargs+=("-executable=$(readlink -f "$so")")
++ readlink -f appdir/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-bmp.so
+ for so in $(find     appdir/usr/lib/x86_64-linux-gnu/gdk-pixbuf-*/*/loaders     -name \*.so)
+ linuxdeployqtargs+=("-executable=$(readlink -f "$so")")
++ readlink -f appdir/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-qtif.so
+ ./linuxdeployqt-continuous-x86_64.AppImage --appimage-extract-and-run appdir/usr/share/applications/org.free_astro.siril.desktop -appimage -unsupported-bundle-everything -executable=/src/build/appimage/build/appdir/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-pnm.so -executable=/src/build/appimage/build/appdir/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-ani.so -executable=/src/build/appimage/build/appdir/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-tiff.so -executable=/src/build/appimage/build/appdir/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-xbm.so -executable=/src/build/appimage/build/appdir/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-svg.so -executable=/src/build/appimage/build/appdir/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-gif.so -executable=/src/build/appimage/build/appdir/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-tga.so -executable=/src/build/appimage/build/appdir/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-icns.so -executable=/src/build/appimage/build/appdir/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-ico.so -executable=/src/build/appimage/build/appdir/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-xpm.so -executable=/src/build/appimage/build/appdir/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-bmp.so -executable=/src/build/appimage/build/appdir/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-qtif.so
linuxdeployqt  (commit 5fa79fa), build 36 built on 2022-08-21 12:36:03 UTC
WARNING: Not checking glibc on the host system.
         The resulting AppDir or AppImage may not run on older systems.
         This mode is unsupported and discouraged.
         For more information, please see
         https://github.com/probonopd/linuxdeployqt/issues/340
Desktop file as first argument: "appdir/usr/share/applications/org.free_astro.siril.desktop"
desktopExecEntry: "siril"
desktopIconEntry: "org.free_astro.siril"
Found binary from desktop file: "/src/build/appimage/build/appdir/usr/bin/siril"
FHS-like mode with PREFIX, fhsPrefix: "/src/build/appimage/build/appdir/usr"
app-binary: "/src/build/appimage/build/appdir/usr/bin/siril"
appDirPath: "/src/build/appimage/build/appdir"
relativeBinPath: "usr/bin/siril"
Keeping existing AppRun
Found icons from desktop file: ("/src/build/appimage/build/appdir/org.free_astro.siril.svg", "/src/build/appimage/build/appdir/usr/share/icons/hicolor/scalable/apps/org.free_astro.siril.svg", "/src/build/appimage/build/appdir/usr/share/icons/hicolor/symbolic/apps/org.free_astro.siril-symbolic.svg")
preExistingToplevelIcon: "/src/build/appimage/build/appdir/org.free_astro.siril.svg"
ERROR: getBinaryRPaths: "objdump: error while loading shared libraries: /src/build/appimage/build/appdir/usr/bin/../lib/libc.so.6: file too short\n"
ERROR: findDependencyInfo: "/bin/bash: error while loading shared libraries: /src/build/appimage/build/appdir/usr/bin/../lib/libc.so.6: file too short\n"
ERROR: getBinaryRPaths: "objdump: error while loading shared libraries: /src/build/appimage/build/appdir/usr/bin/../lib/libc.so.6: file too short\n"
ERROR: findDependencyInfo: "/bin/bash: error while loading shared libraries: /src/build/appimage/build/appdir/usr/bin/../lib/libc.so.6: file too short\n"

I can’t help on this one.

yep yep, that was just “in case”.