Bug#1079735: libglib2.0-0t64: "Exec format error" in foreign-arch installation
Simon McVittie
smcv at debian.org
Tue Aug 27 10:10:16 BST 2024
Control: severity -1 minor
On Mon, 26 Aug 2024 at 23:51:42 -0400, Daniel Richard G. wrote:
> Setting up libglib2.0-0t64:armhf (2.82.0-1) ...
> /var/lib/dpkg/info/libglib2.0-0t64:armhf.postinst: 37: /usr/lib/arm-linux-gnueabihf/glib-2.0/glib-compile-schemas: Exec format error
> /var/lib/dpkg/info/libglib2.0-0t64:armhf.postinst: 38: /usr/lib/arm-linux-gnueabihf/glib-2.0/gio-querymodules: Exec format error
Yes. This is harmless, and installation continues.
> The postinst script should check that the package is being installed on
> a compatible architecture before running these (binary) programs.
How? We cannot know whether running a foreign-architecture executable
is possible on the current architecture (perhaps natively, perhaps via
qemu-user-binfmt or box86 or similar) other than by trying it.
We could ship a trivial executable (the equivalent of /bin/true) for the
host architecture, try to run that, and if it succeeds, proceed with
running the executables that we actually wanted to run... but that seems
equivalent to what already happens, just with extra steps?
These programs need to be run if and only if other programs of the same
architecture will be run. For example, if you had qemu-user-binfmt enabling
you to run armhf programs, then armhf programs that require a GIO module
would not work correctly if the armhf gio-querymodules had not been run.
smcv
More information about the pkg-gnome-maintainers
mailing list