Steam launch fails 2023 I an unsure when this issue began to occur, but Steam does not launch using Box64/Box86. This issue was reported by a Pi-Apps user who used Pi-Apps to install Steam. I have confirmed the issue: Steam does not launch successfully. On first run with no pre-existing config, a number of dialogs appear to download and extract Steam. This seems to succeed. But when running Steam again later, it quickly exits with this output: (Note: /usr/local/bin/steam is a pi-apps custom wrapper script to launch steam) ``` pi@raspberrypi:~ $ /usr/local/bin/steam steam.sh[523448]: Running Steam on debian 12 64-bit steam.sh[523448]: STEAM_RUNTIME is enabled by the user setup.sh[523511]: Steam runtime environment up-to-date! steam.sh[523448]: Steam client's requirements are satisfied Debug level is 1 Dynarec for ARMv8, with extension: HALF FAST_MULT EDSP NEON VFPv4 IDIVA AES PMULL PageSize:4096 Running on Cortex-A76 with 4 Cores Params database has 29 entries Box86 with Dynarec v0.3.5 41a8bc0d built on Dec 23 2023 06:24:30 Using default BOX86_LD_LIBRARY_PATH: ./:lib/:lib32/:x86/:i686/ Using default BOX86_PATH: ./:bin/ Counted 68 Env var Looking for /home/pi/.local/share/Steam/ubuntu12_32/steam steam detected Apply RC params for steam Applying BOX86_NOGTK=1 Applying BOX86_DYNAREC_STRONGMEM=1 Applying BOX86_EMULATED_LIBS=libudev.so.0:libSDL2-2.0.so.0 argv[1]="-no-cef-sandbox" argv[2]="steam://open/minigameslist" Rename process to "steam" Using native(wrapped) libdl.so.2 Using native(wrapped) libc.so.6 Using native(wrapped) ld-linux.so.2 Using native(wrapped) libpthread.so.0 Using native(wrapped) librt.so.1 Using native(wrapped) libbsd.so.0 Using native(wrapped) libX11.so.6 Using native(wrapped) libm.so.6 pi@raspberrypi:~ $ ``` This output is unhelpful, so I ran steam manually using these commands: ``` export STEAMOS=1 export STEAM_RUNTIME=1 export DBUS_FATAL_WARNINGS=0 BOX64_LOG=2 BOX86_LOG=2 BOX64_EMULATED_LIBS=libmpg123.so.0 /usr/lib/steam/bin_steam.sh -no-cef-sandbox steam://open/minigameslist ``` The debug output from this is too long to capture in the terminal, but the ending part seems the most interesting: ``` ... =>PltResolver: Addr=0x76e0fe40, Slot=153 Return=0x405182: elf is /home/pi/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/usr/bin/steam-runtime-identify-library-abi (VerSym=0x4024c6) Apply Global R_X86_64_JUMP_SLOT 0x6134c8 with sym=g_strfreev(ver 0: g_strfreev) (0x4045c6 -> 0x20a00 / box64) return 0x0 533553|0x405182: Calling g_strfreev(0x76EC07B0, 0x3A, 0xFFFFFFFF, ...) => return 0x0 533553|0x404d16: Calling fputc(0xA, 0x76E69A20, 0xFFFFFFFF, ...) => return 0xA 533553|0x404bfd: Calling fclose(0x76E69A20, 0x76E69A20, 0xFFFFFFFF, ...) => return 0x0 ... =>PltResolver: Addr=0x76e0fe40, Slot=24 Return=0x404a93: elf is /home/pi/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/usr/bin/steam-runtime-identify-library-abi (VerSym=0x4024c6) Apply Global R_X86_64_JUMP_SLOT 0x6130c0 with sym=g_option_context_free(ver 0: g_option_context_free) (0x403db6 -> 0x20200 / box64) return 0x0 533553|0x404a93: Calling g_option_context_free(0x76E5CB20, 0x76E69A20, 0xFFFFFFFF, ...) => return 0x0 return 0x0 End of X86 run (0x76e0ee50), RIP=0x10080, Stack=0x1007fec00, unimp=0, emu->fork=0, emu->uc_link=(nil), emu->quit=1 Emulation finished, EAX=0 Calling atexit registered functions (exiting box64) Calling atexit registered functions Calling fini for all loaded elfs and unload native libs Calling Fini[0] for /home/pi/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/usr/bin/steam-runtime-identify-library-abi @0x404e90 Calling Fini for /home/pi/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/usr/bin/steam-runtime-identify-library-abi @0x40de14 533553|Free a X86_64 Emu (0x76e0ee50) *** buffer overflow detected ***: terminated steam.sh[533474]: Dynarec for ARM64, with extension: ASIMD AES CRC32 PMULL SHA1 SHA2 PageSize:4096 Running on Cortex-A76 with 4 Cores Params database has 45 entries BOX64: Didn't detect 48bits of address space, considering it's 39bits Setting up canary (for Stack protector) at FS:0x28, value:91314800 Allocate a new X86_64 Emu, with EIP=(nil) and Stack=0x100000000/0x7F3000 Setup X86_64 Emu NativeBT: /usr/local/bin/box64() [0x34a10d84] NativeBT: linux-vdso.so.1(__kernel_rt_sigreturn+0) [0x7fbc4967bc] NativeBT: /lib/aarch64-linux-gnu/libc.so.6(+0x809d0) [0x7fbc3109d0] NativeBT: /lib/aarch64-linux-gnu/libc.so.6(gsignal+0x1c) [0x7fbc2ca76c] NativeBT: /lib/aarch64-linux-gnu/libc.so.6(abort+0xf0) [0x7fbc2b74bc] NativeBT: /lib/aarch64-linux-gnu/libc.so.6(+0x74aac) [0x7fbc304aac] NativeBT: /lib/aarch64-linux-gnu/libc.so.6(__fortify_fail+0x28) [0x7fbc387b98] NativeBT: /lib/aarch64-linux-gnu/libc.so.6(+0xf6374) [0x7fbc386374] NativeBT: /lib/aarch64-linux-gnu/libc.so.6(__strcat_chk+0x30) [0x7fbc385bb0] NativeBT: /usr/local/bin/box64() [0x34e7bd70] NativeBT: /usr/local/bin/box64() [0x349db630] NativeBT: /usr/local/bin/box64() [0x349d7984] NativeBT: /lib/aarch64-linux-gnu/libc.so.6(+0x27780) [0x7fbc2b7780] NativeBT: /lib/aarch64-linux-gnu/libc.so.6(__libc_start_main+0x98) [0x7fbc2b7858] NativeBT: /usr/local/bin/box64() [0x349d8d20] EmulatedBT: ??? [(nil)] 533560|SIGABRT @0x7fbc3109d0 (???(/lib/aarch64-linux-gnu/libc.so.6+0x809d0)) (x64pc=(nil)/???:"???", rsp=0x1007f3000, stack=0x100000000:0x1007f3000 own=0x100000000 fp=(nil)), for accessing 0x3e800082438 (code=-6/prot=0), db=(nil)((nil):(nil)/(nil):(nil)/???:clean, hash:0/0) handler=(nil) RAX:0x0000000000000000 RCX:0x0000000000000000 RDX:0x0000000000000000 RBX:0x0000000000000000 RSP:0x00000001007f3000 RBP:0x0000000000000000 RSI:0x0000000000000000 RDI:0x0000000000000000 R8:0x0000000000000000 R9:0x0000000000000000 R10:0x0000000000000000 R11:0x0000000000000000 R12:0x0000000000000000 R13:0x0000000000000000 R14:0x0000000000000000 R15:0x0000000000000000 ES:0x002b CS:0x0033 SS:0x002b DS:0x002b FS:0x0043 GS:0x0053 Debug level is 2 Dynarec for ARMv8, with extension: HALF FAST_MULT EDSP NEON VFPv4 IDIVA AES PMULL PageSize:4096 Running on Cortex-A76 with 4 Cores Params database has 29 entries Box86 with Dynarec v0.3.5 41a8bc0d built on Dec 23 2023 06:24:30 Setting up canary (for Stack protector) at GS:0x14, value:08ABAC00 Using default BOX86_LD_LIBRARY_PATH: ./:lib/:lib32/:x86/:i686/ *** buffer overflow detected ***: terminated /home/pi/.local/share/Steam/steam.sh: line 798: 533571 Aborted "$STEAMROOT/$STEAMEXEPATH" "$@" ``` My system is Raspberry Pi 5 running the 4k pagesize kernel, PiOS Bookworm 64-bit, wayland Hoping someone here can look into this and see what can be done to get Steam working again.