appimage-builder icon indicating copy to clipboard operation
appimage-builder copied to clipboard

running via gitlab ci does not produce appimage

Open Nebdir opened this issue 4 years ago • 1 comments

Running via gitlab runner results into issues about libc and that the tools is unabled to detect arch.

But libc6 is installed.

Log:

$ appimage-builder --skip-test
INFO:main:Running main script
INFO:main:Running file deploy
INFO:FileDeploy:deploying /usr/share/X11/locale/compose.dir
INFO:FileDeploy:deploying /usr/share/X11/locale/locale.alias
INFO:FileDeploy:deploying /usr/share/X11/locale/en_US.UTF-8/XLC_LOCALE
INFO:FileDeploy:deploying /usr/share/X11/locale/locale.dir
INFO:FileDeploy:deploying /lib64/ld-linux-x86-64.so.2
INFO:FileDeploy:deploying /usr/share/X11/locale/en_US.UTF-8/Compose
INFO:FileDeploy:Removing excluded files
INFO:main:Running symlinks setup
INFO:main:Running runtime setup
INFO:root:Running configuration helper: GdkPixbuf
INFO:root:Running configuration helper: GLib
INFO:root:Running configuration helper: GStreamer
INFO:root:Running configuration helper: Gtk
INFO:root:Running configuration helper: LibC
WARNING:root:Unable to find libc.so
WARNING:root:The resulting bundle will not be backward compatible as libc is not present
INFO:root:Running configuration helper: Java
INFO:root:Running configuration helper: LibGL
INFO:root:Running configuration helper: OpenSSL
INFO:root:Running configuration helper: Python
INFO:root:Running configuration helper: Qt
Traceback (most recent call last):
  File "/usr/local/bin/appimage-builder", line 11, in <module>
    load_entry_point('appimage-builder==0.9.1', 'console_scripts', 'appimage-builder')()
  File "/usr/local/lib/python3.6/dist-packages/appimage_builder-0.9.1-py3.6.egg/appimagebuilder/__main__.py", line 58, in __main__
    invoker.execute(commands)
  File "/usr/local/lib/python3.6/dist-packages/appimage_builder-0.9.1-py3.6.egg/appimagebuilder/invoker.py", line 41, in execute
    command()
  File "/usr/local/lib/python3.6/dist-packages/appimage_builder-0.9.1-py3.6.egg/appimagebuilder/commands/setup_runtime.py", line 27, in __call__
    runtime.generate()
  File "/usr/local/lib/python3.6/dist-packages/appimage_builder-0.9.1-py3.6.egg/appimagebuilder/modules/setup/generator.py", line 54, in generate
    embed_archs = self._find_embed_archs(executables)
  File "/usr/local/lib/python3.6/dist-packages/appimage_builder-0.9.1-py3.6.egg/appimagebuilder/modules/setup/generator.py", line 90, in _find_embed_archs
    raise RuntimeError("Unable to determine the bundle architecture")
RuntimeError: Unable to determine the bundle architecture

Recipe:

# appimage-builder recipe see https://appimage-builder.readthedocs.io for details
version: 1
AppDir:
  path: <snip>/AppDir
  app_info:
    id: application
    name: application
    icon: application
    version: latest
    exec: usr/bin/application
    exec_args: $@
  files:
    include:
    - /home/<snip>/.fonts.conf
    - /lib64/ld-linux-x86-64.so.2
    - /lib64/libGLX.so.0
    - /lib64/libGLX_system.so.0
    - /lib64/libGLdispatch.so.0
    - /lib64/libX11.so.6
    - /lib64/libXau.so.6
    - /lib64/libXext.so.6
    - /lib64/libXfixes.so.3
    - /lib64/libXi.so.6
    - /lib64/libXrender.so.1
    - /lib64/libXtst.so.6
    - /lib64/libXxf86vm.so.1
    - /lib64/libacl.so.1
    - /lib64/libattr.so.1
    - /lib64/libaudit.so.1
    - /lib64/libbrotlicommon.so.1
    - /lib64/libbrotlidec.so.1
    - /lib64/libbz2.so.1
    - /lib64/libbz2.so.1
    - /lib64/libc.so.6
    - /lib64/libc.so.6
    - /lib64/libc.so.6
    - /lib64/libc.so.6
    - /lib64/libcap-ng.so.0
    - /lib64/libcap.so.2
    - /lib64/libcrypto.so.1.1
    - /lib64/libdl.so.2
    - /lib64/libdl.so.2
    - /lib64/libdl.so.2
    - /lib64/libdl.so.2
    - /lib64/libexpat.so.1
    - /lib64/libfontconfig.so.1
    - /lib64/libfreetype.so.6
    - /lib64/libglapi.so.0
    - /lib64/libglib-2.0.so.0
    - /lib64/libgraphite2.so.3
    - /lib64/libharfbuzz.so.0
    - /lib64/liblua-5.4.so
    - /lib64/liblzma.so.5
    - /lib64/liblzma.so.5
    - /lib64/libm.so.6
    - /lib64/libm.so.6
    - /lib64/libnss_files.so.2
    - /lib64/libnss_sss.so.2
    - /lib64/libpcre.so.1
    - /lib64/libpcre2-8.so.0
    - /lib64/libpng16.so.16
    - /lib64/libpopt.so.0
    - /lib64/libpthread.so.0
    - /lib64/libpthread.so.0
    - /lib64/librpm.so.9
    - /lib64/librpmio.so.9
    - /lib64/librt.so.1
    - /lib64/libselinux.so.1
    - /lib64/libsqlite3.so.0
    - /lib64/libtinfo.so.6
    - /lib64/libtinfo.so.6
    - /lib64/libxcb-dri2.so.0
    - /lib64/libxcb-dri3.so.0
    - /lib64/libxcb-present.so.0
    - /lib64/libxcb-sync.so.1
    - /lib64/libxml2.so.2
    - /lib64/libxshmfence.so.1
    - /lib64/libz.so.1
    - /lib64/libz.so.1
    - /lib64/libzstd.so.1
    - /usr/lib/locale/C.utf8/LC_ADDRESS
    - /usr/lib/locale/C.utf8/LC_ADDRESS
    - /usr/lib/locale/C.utf8/LC_ADDRESS
    - /usr/lib/locale/C.utf8/LC_ADDRESS
    - /usr/lib/locale/C.utf8/LC_COLLATE
    - /usr/lib/locale/C.utf8/LC_COLLATE
    - /usr/lib/locale/C.utf8/LC_COLLATE
    - /usr/lib/locale/C.utf8/LC_COLLATE
    - /usr/lib/locale/C.utf8/LC_CTYPE
    - /usr/lib/locale/C.utf8/LC_CTYPE
    - /usr/lib/locale/C.utf8/LC_CTYPE
    - /usr/lib/locale/C.utf8/LC_CTYPE
    - /usr/lib/locale/C.utf8/LC_IDENTIFICATION
    - /usr/lib/locale/C.utf8/LC_IDENTIFICATION
    - /usr/lib/locale/C.utf8/LC_IDENTIFICATION
    - /usr/lib/locale/C.utf8/LC_IDENTIFICATION
    - /usr/lib/locale/C.utf8/LC_MEASUREMENT
    - /usr/lib/locale/C.utf8/LC_MEASUREMENT
    - /usr/lib/locale/C.utf8/LC_MEASUREMENT
    - /usr/lib/locale/C.utf8/LC_MEASUREMENT
    - /usr/lib/locale/C.utf8/LC_MESSAGES/SYS_LC_MESSAGES
    - /usr/lib/locale/C.utf8/LC_MESSAGES/SYS_LC_MESSAGES
    - /usr/lib/locale/C.utf8/LC_MESSAGES/SYS_LC_MESSAGES
    - /usr/lib/locale/C.utf8/LC_MESSAGES/SYS_LC_MESSAGES
    - /usr/lib/locale/C.utf8/LC_MONETARY
    - /usr/lib/locale/C.utf8/LC_MONETARY
    - /usr/lib/locale/C.utf8/LC_MONETARY
    - /usr/lib/locale/C.utf8/LC_MONETARY
    - /usr/lib/locale/C.utf8/LC_NAME
    - /usr/lib/locale/C.utf8/LC_NAME
    - /usr/lib/locale/C.utf8/LC_NAME
    - /usr/lib/locale/C.utf8/LC_NAME
    - /usr/lib/locale/C.utf8/LC_NUMERIC
    - /usr/lib/locale/C.utf8/LC_NUMERIC
    - /usr/lib/locale/C.utf8/LC_NUMERIC
    - /usr/lib/locale/C.utf8/LC_NUMERIC
    - /usr/lib/locale/C.utf8/LC_PAPER
    - /usr/lib/locale/C.utf8/LC_PAPER
    - /usr/lib/locale/C.utf8/LC_PAPER
    - /usr/lib/locale/C.utf8/LC_PAPER
    - /usr/lib/locale/C.utf8/LC_TELEPHONE
    - /usr/lib/locale/C.utf8/LC_TELEPHONE
    - /usr/lib/locale/C.utf8/LC_TELEPHONE
    - /usr/lib/locale/C.utf8/LC_TELEPHONE
    - /usr/lib/locale/C.utf8/LC_TIME
    - /usr/lib/locale/C.utf8/LC_TIME
    - /usr/lib/locale/C.utf8/LC_TIME
    - /usr/lib/locale/C.utf8/LC_TIME
    - /usr/lib/rpm/fileattrs/sysusers.attr
    - /usr/lib/rpm/macros
    - /usr/lib/rpm/macros.d/macros.dist
    - /usr/lib/rpm/macros.d/macros.pkgconf
    - /usr/lib/rpm/macros.d/macros.systemd
    - /usr/lib/rpm/macros.d/macros.sysusers
    - /usr/lib/rpm/platform/x86_64-linux/macros
    - /usr/lib/rpm/rpmpopt-4.16.1.3
    - /usr/lib/rpm/rpmrc
    - /usr/lib64/gconv/gconv-modules.cache
    - /usr/lib64/gconv/gconv-modules.cache
    - /usr/lib64/gconv/gconv-modules.cache
    - /usr/lib64/gconv/gconv-modules.cache
    - /usr/share/X11/locale/compose.dir
    - /usr/share/X11/locale/compose.dir
    - /usr/share/X11/locale/compose.dir
    - /usr/share/X11/locale/compose.dir
    - /usr/share/X11/locale/en_US.UTF-8/Compose
    - /usr/share/X11/locale/en_US.UTF-8/Compose
    - /usr/share/X11/locale/en_US.UTF-8/Compose
    - /usr/share/X11/locale/en_US.UTF-8/Compose
    - /usr/share/X11/locale/en_US.UTF-8/XLC_LOCALE
    - /usr/share/X11/locale/locale.alias
    - /usr/share/X11/locale/locale.dir
    - /usr/share/fonts/dejavu-sans-fonts/DejaVuSans.ttf
    - /usr/share/fonts/dejavu-sans-fonts/DejaVuSans.ttf
    - /usr/share/locale/locale.alias
    - /usr/share/locale/locale.alias
    - /usr/share/locale/locale.alias
    - /usr/share/locale/locale.alias
    - /var/lib/rpm/rpmdb.sqlite
    - /var/lib/rpm/rpmdb.sqlite-shm
    - /var/lib/rpm/rpmdb.sqlite-wal
    exclude:
    - usr/share/man
    - usr/share/doc/*/README.*
    - usr/share/doc/*/changelog.*
    - usr/share/doc/*/NEWS.*
    - usr/share/doc/*/TODO.*
  test:
    fedora-30:
      image: appimagecrafters/tests-env:fedora-30
      command: ./AppRun
      use_host_x: true
    debian-stable:
      image: appimagecrafters/tests-env:debian-stable
      command: ./AppRun
      use_host_x: true
    archlinux-latest:
      image: appimagecrafters/tests-env:archlinux-latest
      command: ./AppRun
      use_host_x: true
    centos-7:
      image: appimagecrafters/tests-env:centos-7
      command: ./AppRun
      use_host_x: true
    ubuntu-xenial:
      image: appimagecrafters/tests-env:ubuntu-xenial
      command: ./AppRun
      use_host_x: true
AppImage:
  arch: x86_64
  update-information: guess

im out of ideas how to resolve this. any suggestions i should try?

Nebdir avatar Jan 06 '22 20:01 Nebdir

Please make sure that usr/bin/application is a shared linked binary. It it's some sort of shell script or interpreted language file please use the interpreter path instead.

By example if usr/bin/application is a bash script you should define de exec as follows:

    exec: usr/bin/bash
    exec_args: usr/bin/application $@

azubieta avatar Feb 18 '22 17:02 azubieta

Using the mold linker to compile the binary instead of GNU gold caused this error for me. I think that this situation was caused by the ELF magic check logic embedded in appimage-builder failing:

https://github.com/AppImageCrafters/appimage-builder/blob/3d03fcff747af4fb70a3755d19a4e0ac9cf1c8c1/appimagebuilder/modules/setup/apprun_2/executables_scanner.py#L62-L67

It'd be great if appimage-builder worked with mold-linked binaries! :smile:

AlexTMjugador avatar Oct 30 '22 22:10 AlexTMjugador

Hi @AlexTMjugador, I wasn't aware of the existence of this liker. Please feel another issue for it.

azubieta avatar Oct 31 '22 16:10 azubieta

Ive archived the project, therefore this issues wont be updated anymore.

Nebdir avatar Oct 31 '22 20:10 Nebdir