You are not logged in.
Hello everyone,
I have recently decided to give Terraria a go on Linux, since it would not require me to constantly switch back and forth between Arch and Windows. I have downloaded the game from GOG and installed it, however, when I run ./start.sh, nothing happens. I checked the script, and from what I can tell it is just a wrapper for a wrapper which chooses the correct binaries to run. So I cut the middleman and tried to run the binaries directly, located in the 'game' directory. Executing ./Terraria.bin.x86_64 does absolutely nothing, however, executing ./Terraria.bin.x86 returns the following error message:
$ ./Terraria.bin.x86
ALSA lib dlmisc.c:287:(snd1_dlobj_cache_get) Cannot open shared library /usr/lib32/alsa-lib/libasound_module_pcm_pulse.so ((null): libpulse.so.0: cannot open shared object file: No such file or directory)
AL lib: (EE) ALCplaybackAlsa_open: Could not open playback device 'default': No such device or address
I don't really know what that error is about (apart from being related to ALSA), but checking the directory, it is not empty and the file referenced *does* in fact exist:
$ ls -l /usr/lib32/alsa-lib/
total 256K
-rwxr-xr-x 1 root root 14K May 20 02:18 libasound_module_conf_pulse.so
-rwxr-xr-x 1 root root 26K May 20 02:18 libasound_module_ctl_arcam_av.so
-rwxr-xr-x 1 root root 14K May 20 02:18 libasound_module_ctl_oss.so
-rwxr-xr-x 1 root root 30K May 20 02:18 libasound_module_ctl_pulse.so
-rwxr-xr-x 1 root root 18K May 20 02:18 libasound_module_pcm_jack.so
-rwxr-xr-x 1 root root 14K May 20 02:18 libasound_module_pcm_oss.so
-rwxr-xr-x 1 root root 30K May 20 02:18 libasound_module_pcm_pulse.so <--- RIGHT HERE
-rwxr-xr-x 1 root root 14K May 20 02:18 libasound_module_pcm_speex.so
-rwxr-xr-x 1 root root 14K May 20 02:18 libasound_module_pcm_upmix.so
-rwxr-xr-x 1 root root 14K May 20 02:18 libasound_module_pcm_usb_stream.so
-rwxr-xr-x 1 root root 14K May 20 02:18 libasound_module_pcm_vdownmix.so
lrwxrwxrwx 1 root root 35 May 20 02:18 libasound_module_rate_samplerate_best.so -> libasound_module_rate_samplerate.so
lrwxrwxrwx 1 root root 35 May 20 02:18 libasound_module_rate_samplerate_linear.so -> libasound_module_rate_samplerate.so
lrwxrwxrwx 1 root root 35 May 20 02:18 libasound_module_rate_samplerate_medium.so -> libasound_module_rate_samplerate.so
lrwxrwxrwx 1 root root 35 May 20 02:18 libasound_module_rate_samplerate_order.so -> libasound_module_rate_samplerate.so
-rwxr-xr-x 1 root root 14K May 20 02:18 libasound_module_rate_samplerate.so
lrwxrwxrwx 1 root root 34 May 20 02:18 libasound_module_rate_speexrate_best.so -> libasound_module_rate_speexrate.so
lrwxrwxrwx 1 root root 34 May 20 02:18 libasound_module_rate_speexrate_medium.so -> libasound_module_rate_speexrate.so
-rwxr-xr-x 1 root root 14K May 20 02:18 libasound_module_rate_speexrate.so
Finally, it also appears that the issue may lie with PulseAudio, maybe a missing 32-bit library, so I searched for such a package with pacman and found lib32-libpulse, which I installed. After installing said package, I execute ./Terraria.bin.x86 again, but this time nothing happens; the game still does not launch, no errors, nothing. Same deal with the x86_64 binaries. I don't know how to proceed from here, what should I check for next and how can I solve this isssue? Similar issues around the web are either unresolved or their solutions do not apply/do not work. This is fairly weird, as other games like Divinity: Original Sin and Tyranny are running fine and gave me almost no issues.
(Maybe?) Relevant PC specs:
Lenovo Legion Y530, i7-8750H, Nvidia 1050 Ti.
Arch Linux x86_64 5.1.11-arch1-1-ARCH
i3 window manager
Last edited by re4xn (2019-06-18 20:29:11)
Offline
Well, guess I was so focused on the ALSA error, that I didn't bother to search whether someone from the glorious AUR had a fix. Reinstalling Terraria using the 'gog-terraria' package from the AUR found here has fixed the issue. Game is working fine, although I still do not know what the issue was specifically; reading through the PKGBUILD might shed some more light.
Offline
The original error said, that /usr/lib32/alsa-lib/libasound_module_pcm_pulse.so was missing.
You can find out, which package owns the file with pacman -Qo:
carnager@caprica ~ > pacman -Qo /usr/lib32/alsa-lib/libasound_module_pcm_pulse.so
/usr/lib32/alsa-lib/libasound_module_pcm_pulse.so is owned by lib32-alsa-plugins 1.1.9-1
And then simply install that.
Last edited by Rasi (2019-06-20 06:04:35)
He hoped and prayed that there wasn't an afterlife. Then he realized there was a contradiction involved here and merely hoped that there wasn't an afterlife.
Douglas Adams
Offline
^ -Q queries locally installed packages, so that won't help someone who is missing the package.
You want pacman -F, or pkgfile. e.g.
pacman -Fo /usr/lib32/alsa-lib/libasound_module_pcm_pulse.so
pacman -Fs libasound_module_pcm_pulse.so
or
pkgfile libasound_module_pcm_pulse.so
Sakura:-
Mobo: MSI MAG X570S TORPEDO MAX // Processor: AMD Ryzen 9 5950X @4.9GHz // GFX: AMD Radeon RX 5700 XT // RAM: 32GB (4x 8GB) Corsair DDR4 (@ 3000MHz) // Storage: 1x 3TB HDD, 6x 1TB SSD, 2x 120GB SSD, 1x 275GB M2 SSD
Making lemonade from lemons since 2015.
Offline
Thanks for the tip, I'll keep it in mind in the future! Although the problem was weird because the file *did* exist (I had the 'lib32-alsa-plugins' package already), and Terraria still complained it could not find it.
Offline
Well, guess I was so focused on the ALSA error, that I didn't bother to search whether someone from the glorious AUR had a fix. Reinstalling Terraria using the 'gog-terraria' package from the AUR found here has fixed the issue. Game is working fine, although I still do not know what the issue was specifically; reading through the PKGBUILD might shed some more light.
Likely the permissions line at the end.
Allan-Volunteer on the (topic being discussed) mailn lists. You never get the people who matters attention on the forums.
jasonwryan-Installing Arch is a measure of your literacy. Maintaining Arch is a measure of your diligence. Contributing to Arch is a measure of your competence.
Griemak-Bleeding edge, not bleeding flat. Edge denotes falls will occur from time to time. Bring your own parachute.
Offline