[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: appimage with 24.04
[Thread Prev] | [Thread Next]
- Subject: Re: appimage with 24.04
- From: Brian G <brian@xxxxxxxxxxxxxxxx>
- Date: Fri, 8 Aug 2025 11:51:12 -0700
- To: user@xxxxxxxxxxxxxxxxxxxxxx
On 8/8/25 10:48, Benoît Minisini wrote:
Le 08/08/2025 à 19:29, Brian G a écrit :Little more progress. I built the debug version of the AppRun app.I tracked it down specifically to gbr3->gbx3 generating the error when the version of libc6 is the one being used from the bundle. Trying to track down if some lib path or ld path is being set incorrectly. Now if someone knows how to debug the gbr3->gbx3 or somehow turn on debug messages, would be very very helpful!Ben is it possible to turn on debug messages at runtime in those apps? would have to be very early during startup.I don't understand what you are talking about. Can you explain?
Ok, AppRun, that is the part that starts the appimage actual user app. Here is what I understandIt does a number of things when the appimage is started, one of the main things it does is set a diversion so to speak in regards to the libc library.
If the version in the appimage bundle as reported by the .env file is less than the System version libc then AppRun creates diversion to use the system version of the
libc library.But when the bundle version of libc is equal or greater than the system version of libc then AppRun sets the diversion to use the version of libc contained inside the
bundle. that is the general mechanics of the thing.Now when the version set by AppRun is the system version of libc then gbr3->gbx3 runs correctly. It is when the AppRun sets the diversion to the bundle version of libc
that the gbr3->gbx3 exits with file not found.It looks like right now that gbx3 is looking for some library and getting confused where it is... this at this point is supposition.
If it were possible to trace the startup of gbx3 then perhaps it would be possible to see what is happening, and maybe set an env variable to fix the issue.
So the question is how to turn on the internal trace for gbx3? here is a sample output from the AppRun trace This works, ignore the bytecode error my fault APPRUN_DEBUG: APPRUN_PATH=/tmp/.mount_hello_e9O4MQ/AppRun APPRUN_DEBUG: set env ORIGIN=/tmp/.mount_hello_e9O4MQ APPRUN_DEBUG: Looking for .env file at: /tmp/.mount_hello_e9O4MQ/AppRun.env APPRUN_DEBUG: set env APPDIR=/tmp/.mount_hello_e9O4MQ APPRUN_DEBUG: set env APPIMAGE_UUID=SN6Ut7w APPRUN_DEBUG: set env APPDIR_EXEC_PATH=/tmp/.mount_hello_e9O4MQ/usr/bin/gbr3APPRUN_DEBUG: set env APPDIR_EXEC_ARGS=/tmp/.mount_hello_e9O4MQ/usr/bin/hello_world APPRUN_DEBUG: set env XDG_DATA_DIRS=/tmp/.mount_hello_e9O4MQ/usr/local/share:/tmp/.mount_hello_e9O4MQ/usr/share:/usr/share/mate:/home/brian/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share APPRUN_DEBUG: set env XDG_CONFIG_DIRS=/tmp/.mount_hello_e9O4MQ/etc/xdg:/etc/xdg/xdg-mate:/etc/xdg APPRUN_DEBUG: set env APPDIR_LIBRARY_PATH=/tmp/.mount_hello_e9O4MQ/usr/lib/gambas3:/tmp/.mount_hello_e9O4MQ/usr/lib/x86_64-linux-gnu:/tmp/.mount_hello_e9O4MQ/lib/x86_64 APPRUN_DEBUG: set env PATH=/tmp/.mount_hello_e9O4MQ/usr/bin:/tmp/.mount_hello_e9O4MQ/bin:/home/brian/vars/scripts:/usr/share/gsh/scripts:/usr/lib/git-core:/home/brian/.config/emacs/bin:/home/brian/.local/bin:/home/brian/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/opt/thinlinc/bin:/opt/thinlinc/sbin
APPRUN_DEBUG: set env GTK_EXE_PREFIX=/tmp/.mount_hello_e9O4MQ/usr APPRUN_DEBUG: set env GTK_DATA_PREFIX=/tmp/.mount_hello_e9O4MQ/usrAPPRUN_DEBUG: set env APPDIR_LIBC_LIBRARY_PATH=/tmp/.mount_hello_e9O4MQ/runtime/compat/usr/lib/x86_64-linux-gnu:/tmp/.mount_hello_e9O4MQ/runtime/compat/usr/lib/x86_64-linux-gnu/gconv:/tmp/.mount_hello_e9O4MQ/runtime/compat/usr/lib64
APPRUN_DEBUG: set env APPDIR_LIBC_VERSION=2.35 APPRUN_DEBUG: set env GB_PATH=/tmp/.mount_hello_e9O4MQ/usr/bin/gbr3APPRUN_DEBUG: set env APPDIR_PATH_MAPPINGS=/home/brian/.var/tmp/AppImage/AppDir:/tmp/.mount_hello_e9O4MQ;
APPRUN_DEBUG: set env APPDIR_LIBC_LINKER_PATH={'lib64/ld-linux-x86-64.so.2'} APPRUN_DEBUG: interpreter "{'lib64/ld-linux-x86-64.so.2'}" APPRUN_DEBUG: system ld(2.39), appdir ld(2.35) APPRUN_DEBUG: using system libcAPPRUN_DEBUG: set env LD_LIBRARY_PATH=/tmp/.mount_hello_e9O4MQ/usr/lib/gambas3:/tmp/.mount_hello_e9O4MQ/usr/lib/x86_64-linux-gnu:/tmp/.mount_hello_e9O4MQ/lib/x86_64:
APPRUN_DEBUG: set env LD_PRELOAD=libapprun_hooks.soAPPRUN_DEBUG: set env APPRUN_RUNTIME=/tmp/.mount_hello_e9O4MQ/runtime/default APPRUN_DEBUG: executing "/tmp/.mount_hello_e9O4MQ/usr/bin/gbr3" "/tmp/.mount_hello_e9O4MQ/usr/bin/hello_world" ERROR: #2: Cannot load class 'Main': Bytecode too recent. Please upgrade Gambas.
Here is the failing run APPRUN_DEBUG: APPRUN_PATH=/tmp/.mount_hello_z3tIiS/AppRun APPRUN_DEBUG: set env ORIGIN=/tmp/.mount_hello_z3tIiS APPRUN_DEBUG: Looking for .env file at: /tmp/.mount_hello_z3tIiS/AppRun.env APPRUN_DEBUG: set env APPDIR=/tmp/.mount_hello_z3tIiS APPRUN_DEBUG: set env APPIMAGE_UUID=SN6Ut7w APPRUN_DEBUG: set env APPDIR_EXEC_PATH=/tmp/.mount_hello_z3tIiS/usr/bin/gbr3APPRUN_DEBUG: set env APPDIR_EXEC_ARGS=/tmp/.mount_hello_z3tIiS/usr/bin/hello_world APPRUN_DEBUG: set env XDG_DATA_DIRS=/tmp/.mount_hello_z3tIiS/usr/local/share:/tmp/.mount_hello_z3tIiS/usr/share:/usr/share/mate:/home/brian/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share APPRUN_DEBUG: set env XDG_CONFIG_DIRS=/tmp/.mount_hello_z3tIiS/etc/xdg:/etc/xdg/xdg-mate:/etc/xdg APPRUN_DEBUG: set env APPDIR_LIBRARY_PATH=/tmp/.mount_hello_z3tIiS/usr/lib/gambas3:/tmp/.mount_hello_z3tIiS/usr/lib/x86_64-linux-gnu:/tmp/.mount_hello_z3tIiS/lib/x86_64 APPRUN_DEBUG: set env PATH=/tmp/.mount_hello_z3tIiS/usr/bin:/tmp/.mount_hello_z3tIiS/bin:/home/brian/vars/scripts:/usr/share/gsh/scripts:/usr/lib/git-core:/home/brian/.config/emacs/bin:/home/brian/.local/bin:/home/brian/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/opt/thinlinc/bin:/opt/thinlinc/sbin
APPRUN_DEBUG: set env GTK_EXE_PREFIX=/tmp/.mount_hello_z3tIiS/usr APPRUN_DEBUG: set env GTK_DATA_PREFIX=/tmp/.mount_hello_z3tIiS/usrAPPRUN_DEBUG: set env APPDIR_LIBC_LIBRARY_PATH=/tmp/.mount_hello_z3tIiS/runtime/compat/usr/lib/x86_64-linux-gnu:/tmp/.mount_hello_z3tIiS/runtime/compat/usr/lib/x86_64-linux-gnu/gconv:/tmp/.mount_hello_z3tIiS/runtime/compat/usr/lib64
APPRUN_DEBUG: set env APPDIR_LIBC_VERSION=2.39 APPRUN_DEBUG: set env GB_PATH=/tmp/.mount_hello_z3tIiS/usr/bin/gbr3APPRUN_DEBUG: set env APPDIR_PATH_MAPPINGS=/home/brian/.var/tmp/AppImage/AppDir:/tmp/.mount_hello_z3tIiS;
APPRUN_DEBUG: set env APPDIR_LIBC_LINKER_PATH={'lib64/ld-linux-x86-64.so.2'} APPRUN_DEBUG: interpreter "{'lib64/ld-linux-x86-64.so.2'}" APPRUN_DEBUG: system ld(2.39), appdir ld(2.39) APPRUN_DEBUG: using appdir libcAPPRUN_DEBUG: set env LD_LIBRARY_PATH=/tmp/.mount_hello_z3tIiS/usr/lib/gambas3:/tmp/.mount_hello_z3tIiS/usr/lib/x86_64-linux-gnu:/tmp/.mount_hello_z3tIiS/lib/x86_64:/tmp/.mount_hello_z3tIiS/runtime/compat/usr/lib/x86_64-linux-gnu:/tmp/.mount_hello_z3tIiS/runtime/compat/usr/lib/x86_64-linux-gnu/gconv:/tmp/.mount_hello_z3tIiS/runtime/compat/usr/lib64:
APPRUN_DEBUG: set env LD_PRELOAD=libapprun_hooks.so APPRUN_DEBUG: set env APPRUN_RUNTIME=/tmp/.mount_hello_z3tIiS/runtime/compatAPPRUN_DEBUG: executing "/tmp/.mount_hello_z3tIiS/usr/bin/gbr3" "/tmp/.mount_hello_z3tIiS/usr/bin/hello_world"
APPRUN_ERROR: No such file or directoryThat is what i have so far. Maybe you can spot something, but a trace from gbr3 would be nice!
-- ~~~~ Brian
Attachment:
OpenPGP_0x78BFB26402F48419.asc
Description: OpenPGP public key
Attachment:
OpenPGP_signature.asc
Description: OpenPGP digital signature
Re: appimage with 24.04 | Linus <olivier.cruilles@xxxxxxxx> |
Re: appimage with 24.04 | Brian G <brian@xxxxxxxxxxxxxxxx> |
Re: appimage with 24.04 | Benoît Minisini <benoit.minisini@xxxxxxxxxxxxxxxx> |