protonscr

Bundled libmpg123.so.0 can be too old for system installed libasound_module_pcm_pulse.so

steamvropen bug
ValveSoftware/SteamVR-for-Linux#524 · opened 2022-07-03 by kisak-valve · updated 2026-06-24 · 5 comments · github
1 matching comments, n / p to jump
Kkisak-valve 2022-07-03 github

Describe the bug
During routine driver testing with my Gentoo test system with SteamVR Home and Half-Life Alyx, the audio path to failed with:
ALSA lib /var/tmp/portage/media-libs/alsa-lib-1.2.6.1/work/alsa-lib-1.2.6.1/src/dlmisc.c:337:(snd_dlobj_cache_get0) Cannot open shared library libasound_module_pcm_pulse.so (/usr/lib64/libsndfile.so.1: undefined symbol: mpg123_info2)
This is due to the bundled version of libmpg123.so.0 being too old for libsndfile 1.1.0 built against mpg 1.29.3, which pulled in the newer symbol, and results in audio being disabled in both applications.

Renaming [...]/steamapps/common/SteamVR/tools/steamvr_environments/game/bin/linuxsteamrt64/libmpg123.so.0 and [...]/steamapps/common/Half-Life Alyx/game/bin/linuxsteamrt64/libmpg123.so.0 to libmpg123.so.0.disabled allowed the system to use the system-installed mpg123 and have working audio.

System Information (please complete the following information):

  • Distribution: Gentoo
  • SteamVR version: 1.23.4
  • Steam client version: Detail skipped
  • Opted into Steam client beta?: Yes
  • Graphics driver version: mesa/RADV 22.1.3
  • Gist for SteamVR System Information: [See instructions]
MMikMikus 2023-02-03 github

I'm having a similar sound problem in Kingdom Rush after a system update.
Renaming libmpg123.so.0 to libmpg123.so.0.disabled in the game folder temporarily helped.
Thx @kisak-valve

XXDM-Inc 2023-12-01 github

this was a problem for me as well in fedora linux with a nvidia card. removing that file FIXED it!

SSazu-bit 2024-12-18 github

Glad to see this is still a problem. Artix :D

Ddscharrer 2025-01-09 github

Renaming libmpg123.so.0 wasn't enough for me, I also had to rename libSDL2-2.0.so.0 to get sound output.

Bbdandy 2026-06-24 github

the bug still present. Instead of removing can use LD_PRELOAD="/usr/lib64/libmpg123.so" %command%