Hello @whew-inc, in general, Steam needs the host system to provide 32 bit and 64 bit of both libc and OpenGL drivers. The Steam runtime should provide basic coverage for the rest of the libraries used by the Steam client. Running the Ubuntu-intended Steam package through alien sounds abnormal for OpenSUSE Tumbleweed. I would have expected you to use the distro-maintained variant instead.
Hello @whew-inc, in general, Steam needs the host system to provide 32 bit and 64 bit of both libc and OpenGL drivers. The Steam runtime should provide basic coverage for the rest of the libraries used by the Steam client. Running the Ubuntu-intended Steam package through alien sounds abnormal for OpenSUSE Tumbleweed. I would have expected you to use the distro-maintained variant instead.
Hi!
I was using Steam from the repos. It was an attempt to solve this issue. Currently Steam is installed from the distro repo.
Both glibc and glibc-32bit packages are installed.
It seems the log was so short because the missing libc popup was in the background.
I put the full log in the issue.
Failed to load steamui.so - dlerror(): libgpg-error.so.0: cannot stat shared object: Value too large for defined data type looks like the critical detail in your log.
Apparently we've seen a similar snafu at #7672. I suspect that the system-wide library has been damaged somehow.
Before anything else, I recommend doing a filesystem check on your drive(s) to make sure they are sane, then search for system-wide libgpg-error.so.0 and find what package it belongs to (there may be both a 32 bit and 64 bit variant to check) and reinstall that system package.
Unfortunately, I'm not that familiar with OpenSUSE to give distro-specific instructions.
I checked the FS using btrfs scrub and btrfs check. Only some qgroup issues which are not relevant or critical.
No, I believe the issue lies in setting the time to a very distant year. Probably related to Steam not being able to handle time past 32-bit range.
Out of curiosity, I set the system time to 2100 again and ran Steam:
Steam log 1:
whew-inc@Desktop-Inc:~$ steam
Running Steam on opensuse-tumbleweed 20210629 64-bit
STEAM_RUNTIME is enabled automatically
Pins up-to-date!
Error: You are missing the following 32-bit libraries, and Steam may not run:
libc.so.6
Steam client's requirements are satisfied
WARNING: Using default/fallback debugger launch
/home/whew-inc/.local/share/Steam/ubuntu12_32/steam
/home/whew-inc/.local/share/Steam/ubuntu12_32/steam: error while loading shared libraries: libdl.so.2: cannot stat shared object: Error 75
libdl.so.2 is part of glibc(-32bit) package:
whew-inc@Desktop-Inc:~$ zypper se --provides --match-exact libdl.so.2
S | Name | Summary | Type
---+-------------+----------------------------------------------------+--------
i+ | glibc | Standard Shared Libraries (from the GNU C Library) | package
i+ | glibc-32bit | Standard Shared Libraries (from the GNU C Library) | package
Curious, I already have this installed. I set the time back to 2021 and forced a reinstallation using zypper in -f glibc-32bit.
I run Steam again:
Steam log 2:
whew-inc@Desktop-Inc:~$ steam
Running Steam on opensuse-tumbleweed 20210629 64-bit
STEAM_RUNTIME is enabled automatically
Pins up-to-date!
Error: You are missing the following 32-bit libraries, and Steam may not run:
libc.so.6
Steam client's requirements are satisfied
WARNING: Using default/fallback debugger launch
/home/whew-inc/.local/share/Steam/ubuntu12_32/steam
/home/whew-inc/.local/share/Steam/ubuntu12_32/steam: error while loading shared libraries: libstdc++.so.6: cannot stat shared object: Error 75
Now libstdc++.so.6 is missing.
So instead of installing the related library, I set the system time back to 2100 again, and ran Steam:
Steam log 3:
Running Steam on opensuse-tumbleweed 20210629 64-bit
STEAM_RUNTIME is enabled automatically
Pins up-to-date!
Error: You are missing the following 32-bit libraries, and Steam may not run:
libc.so.6
Steam client's requirements are satisfied
WARNING: Using default/fallback debugger launch
/home/whew-inc/.local/share/Steam/ubuntu12_32/steam
/home/whew-inc/.local/share/Steam/ubuntu12_32/steam: error while loading shared libraries: libdl.so.2: cannot stat shared object: Error 75
Same missing library again like in log 1.
Checking the library file, the access timestamp is set to a date in the year 2100.
Running touch -a ./libdl.so.2 and running steam again produces log 2. Running the command & steam again makes steam fail on libpthread.so.0.
I guess this is Steam's inability to load files with a timestamp beyond the 32-bit range.
Not sure what to do now. Should I touch the whole system? Seems dangerous.
I ran this command: sudo find / -type f -exec touch -a {} +
This touches every file in the system, overwriting the access timestamp with the current time.
I then reinstalled Steam, deleted ~/.steam & ~/.local/share/Steam and now it works. Finally!
Nothing extracted yet.
Your system information
Please describe your issue in as much detail as possible:
Running
steamgives me this:I tried:
steam --resetThe same command but after deleting .steam and ~/.local/share/Steam
LD_PRELOAD=/usr/lib/libc.so.6 steamgivesERROR: ld.so: object '/usr/lib/libc.so.6' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.Reinstalling
glibc-32bitInstalling Steam from the Steam website after converting it to .rpm using
alienSwitching Steam to beta and doing the same thing again
It used to ignore the error and continue anyway, but then it told me it's missing a library. I install the library, start Steam and then it's a different missing library. Rinse and repeat until it got to libgpg-error.so.0 which I couldn't find in the repos.
Steps for reproducing this issue:
Steam was working fine for a long time, until yesterday after restarting Steam.
I remember doing these unorthodox things when it happened:
I set the system date to somewhere ~2100 for a short time and then back
I accidentally pressed the Steam VR button, and then quickly quit steam using the tray button. Right after that I started Steam again and this issue appeared.