Posted June 26, 2023
Hi,
When I firstly installed Kingdom Rush on my Archlinux machine it worked fine, but there was no audio. After very long searching I managed to find a solution that worked for me. I'm writing this post to document my findings and to help others find an answer faster. I do not know if this is an universal solution, but I hope that if it doesn't solve other people's problems instantly it will guide them in the right direction.
The error message, when running game directly from shell was:
ALSA lib dlmisc.c:337:(snd_dlobj_cache_get0) Cannot open shared library libasound_module_pcm_pulse.so (/usr/lib/libsndfile.so.1: undefined symbol: mpg123_info2)
AL lib: alsa_open_playback: Could not open playback device 'default': No such device or address
Could not open device.
The problem was with the mpg123 library. The one packaged with the game (in the "Kingdom Rush/game" directory) seems to be out of date. The solution was to install this library on the host system (for me version 1.31.1 works) and forcing game to use it instead. It can be done by renaming, moving or deleting file libmpg123.so.0 from "Kingdom Rush/game" directory.
If you have similar problems and find other solutions please feel free to share them in the comments. And if you find my instructions misleading or not explaining the real root of the problem please correct me in the comments as well.
Hope this helps!
When I firstly installed Kingdom Rush on my Archlinux machine it worked fine, but there was no audio. After very long searching I managed to find a solution that worked for me. I'm writing this post to document my findings and to help others find an answer faster. I do not know if this is an universal solution, but I hope that if it doesn't solve other people's problems instantly it will guide them in the right direction.
The error message, when running game directly from shell was:
ALSA lib dlmisc.c:337:(snd_dlobj_cache_get0) Cannot open shared library libasound_module_pcm_pulse.so (/usr/lib/libsndfile.so.1: undefined symbol: mpg123_info2)
AL lib: alsa_open_playback: Could not open playback device 'default': No such device or address
Could not open device.
The problem was with the mpg123 library. The one packaged with the game (in the "Kingdom Rush/game" directory) seems to be out of date. The solution was to install this library on the host system (for me version 1.31.1 works) and forcing game to use it instead. It can be done by renaming, moving or deleting file libmpg123.so.0 from "Kingdom Rush/game" directory.
If you have similar problems and find other solutions please feel free to share them in the comments. And if you find my instructions misleading or not explaining the real root of the problem please correct me in the comments as well.
Hope this helps!