Source-1-Games
Source-1-Games copied to clipboard
[TF2] [x64_test] tf_linux64: Required GLibc version (2.38) may be too recent (Steam Runtime Sniper 2.31).
Hello,
When starting x64 TF2 on Kubuntu 22.04 LTS, the following error happens:
/home/[REDACTED]/.steam/debian-installation/steamapps/common/Team Fortress 2/tf_linux64: /usr/lib/pressure-vessel/overrides/lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.38' not found (required by /home/[REDACTED]/.steam/debian-installation/steamapps/common/Team Fortress 2/tf_linux64)
The new TF2 executable requires GLibC 2.38, which doesn't match the Steam Runtime 3.0 "Sniper" configuration of Debian 11 (according to the docs that is). Debian 11 has libc6 2.31, so the Sniper Runtime most likely does as well.
The Sniper README states:
If the library might become part of the dependency stack for graphics drivers (for example glibc, zlib, libelf, libgcc, libstdc++), then we can still can backport invididual bug-fixes and features without backporting an entire new upstream version, but Steam and games cannot rely on having those bug-fixes and features at runtime, because our library might have been overridden by a newer upstream version from the host system.
So, from my understanding, the Steam Runtime Sniper guarantees a minimum version of 2.31 for GLibc (with possible backport fixes by Valve), but if the user has a more recent stack (eg. Ubuntu 22.04's GLibc 2.35 or Arch Linux's 2.39), it will use these more recent versions from the system instead.
Thus, when starting the game on a machine running very recent packages (Arch Linux, Ubuntu 23.10), the game will run fine because the Steam Runtime will use the system's 2.38+ GLibc. However, on older distributions (e.g. Debian (even sid!), Ubuntu 23.04 and earlier, etc.), GLibC may be pre-2.38 and this will cause the game to not start.
The GLibC requirement should be lowered to 2.31 for maximum compatibility with the Steam Runtime 3.0 "Sniper".
EDIT: This does not seem to affect the dedicated server, which appears to reference the very ancient glibc 2.2.5.
Cheers.
+1, I'm on debian stable and can't launch the 64-bit beta. I might try on sid and report back. EDIT: nevermind, it appears sid is on 2.38, just barely off EDIT 2: I am finishing setting up a gentoo install to see if I can reproduce the bug there, probably not because of the newer glibc version.
+1, on Ubuntu 23.04 and facing the same issue. I was capable of running the 64-bit branch previously but I am now incapable.
+1 on Debian 12. #5497
it appears to be linked against a very new GLIBC version since I get the same message when I run ldd on the executable
+1 Linux Mint 21.3
Same thing on Debian SID.
pop-os 22.04 here, same issue.
Reproduced on both debian bookworm (stable) and debian trixie (testing/nextstable).
edited addition: bookworm relies on libc6 (glibc) 2.36 and trixie relies on libc6 (glibc) 2.37 at the moment, though this may change before trixie's release.
Linux Mint 21.3, same issue here really wanted to try out the new beta :(
Hopefully should be fixed in the next update
thank you kisak :)
Still not fixed for me :(
I can confirm the latest x64 update released some minutes ago fixes this issue. I can now boot the game on Ubuntu 22.04 LTS and the game's executable has the same glibc references as the dedicated server.
If the game still doesn't start for you after updating, make sure your system's configuration has Vulkan 1.3-compatible drivers, as TF2's x64 edition uses the DXVK 2.x layer. Check this page for details on driver support for DXVK.
If your configuration doesn't support Vulkan 1.3, add -gl
as a command-line option to get the game up and running. See #5506 for that issue.
Closing!