I've been able to compile Exhibitera_Hub on a Raspberry Pi 4 with the default Raspbian 11 (bullseye) distribution without any errors. However, the resulting binary fails to run, due to a requirement (argon2_cffi_bindings) being pulled in, which includes a pre-compiled shared library (_ffi.abi3.so) that appears to be incompatible.
From the output of pyinstaller (no error indicated):
Collecting argon2-cffi-bindings (from argon2-cffi->-r /home/dmorgan/MaritimeMuseum/Software/Exhibitera/Exhibitera-hub-build-rpi4//requirements.txt (line 2))
Using cached https://www.piwheels.org/simple/argon2-cffi-bindings/argon2_cffi_bindings-21.2.0-cp311-abi3-linux_armv7l.whl
However, the version of _ffi.abi3.so being included looks like it requires at least GLIBC v2.34. When running the resulting Exhibitera_hub binary:
Traceback (most recent call last):
File "Exhibitera_Hub.py", line 47, in <module>
File "PyInstaller/loader/pyimod02_importers.py", line 419, in exec_module
File "exhibitera_users.py", line 9, in <module>
File "PyInstaller/loader/pyimod02_importers.py", line 419, in exec_module
File "argon2/__init__.py", line 7, in <module>
File "PyInstaller/loader/pyimod02_importers.py", line 419, in exec_module
File "argon2/low_level.py", line 17, in <module>
File "PyInstaller/loader/pyimod02_importers.py", line 419, in exec_module
File "_argon2_cffi_bindings/__init__.py", line 3, in <module>
ImportError: /lib/arm-linux-gnueabihf/libc.so.6: version `GLIBC_2.34' not found (required by /tmp/_MEI4yfZDn/_argon2_cffi_bindings/_[ffi.abi3.so](http://ffi.abi3.so/))
[23226] Failed to execute script 'Exhibitera_Hub' due to unhandled exception!
RPi 4 has only GLIBC 2.31:
GNU C Library (Debian GLIBC 2.31-13+rpt2+rpi1+deb11u8) stable release version 2.31.
Copyright (C) 2020 Free Software Foundation, Inc.
As @forceflow1049 pointed out to me, an RPi 4 is not an ideal platform on which to run Hub, but might be good to fix this in some fashion. I did verify that this seems to be the only issue to getting Hub running, by installing python3-argon2 via the apt repository, manually copying over _ffi.abi3.so to the Hub build directory and redoing the build.
I've been able to compile Exhibitera_Hub on a Raspberry Pi 4 with the default Raspbian 11 (bullseye) distribution without any errors. However, the resulting binary fails to run, due to a requirement (argon2_cffi_bindings) being pulled in, which includes a pre-compiled shared library (
_ffi.abi3.so
) that appears to be incompatible.From the output of pyinstaller (no error indicated):
However, the version of
_ffi.abi3.so
being included looks like it requires at least GLIBC v2.34. When running the resulting Exhibitera_hub binary:RPi 4 has only GLIBC 2.31:
As @forceflow1049 pointed out to me, an RPi 4 is not an ideal platform on which to run Hub, but might be good to fix this in some fashion. I did verify that this seems to be the only issue to getting Hub running, by installing
python3-argon2
via the apt repository, manually copying over_ffi.abi3.so
to the Hub build directory and redoing the build.