I purchased this some years ago on GOG but recently had a problem on Linux with the audio not playing after the latest Debian update. I'm hoping these fixes can be employed by the developers in future builds so users don't have to struggle with it.
I heard that patching the sound libraries can fix it, but I struggled to find instructions on how to do thise, since the command mentioned in the console error log isn't present in the latest debian. Here's what I did to fix it:
Extract the archive, which will create a folder (fmod-jni)
Enter that folder, then go into fmod_runtimes
You'll see three .so files:
libfmod.so
libfmodstudio.so
libfmodJNI.so
I found I needed root permissions to run the command but that may not be necessary, but I did:
su root
sudo su
and then ran execstack -c on each of those:
execstack -c libfmod.so
execstack -c libfmodstudio.so
execstack -c libfmodJNI.so
I then opened the fmod-jni.jar in the wildermyth/game/lib folder with an archive explorer and copied the patched versions of those libraries back into the fmod-jni.jar file (which is just a zip with the extension renamed to .jar - so you can probably just recreate the file.
After that, I made sure the temporary copy of the libfmod.so files were not left behind to conflict, so I deleted the /tmp/jnigen folder
I suspect the developers should probably do this on future packagings of linux versions.
← Return to game
Comments
Log in with itch.io to leave a comment.
I purchased this some years ago on GOG but recently had a problem on Linux with the audio not playing after the latest Debian update. I'm hoping these fixes can be employed by the developers in future builds so users don't have to struggle with it.
I heard that patching the sound libraries can fix it, but I struggled to find instructions on how to do thise, since the command mentioned in the console error log isn't present in the latest debian. Here's what I did to fix it:
Download an execstack package from below:
https://snapshot.debian.org/archive/debian/20200413T201859Z/pool/main/p/prelink/
Go into the wildermyth/game/lib folder
You'll see a file called fmod-jni.jar
Extract the archive, which will create a folder (fmod-jni)
Enter that folder, then go into fmod_runtimes
You'll see three .so files:
libfmod.so
libfmodstudio.so
libfmodJNI.so
I found I needed root permissions to run the command but that may not be necessary, but I did:
su root
sudo su
and then ran execstack -c on each of those:
execstack -c libfmod.so
execstack -c libfmodstudio.so
execstack -c libfmodJNI.so
I then opened the fmod-jni.jar in the wildermyth/game/lib folder with an archive explorer and copied the patched versions of those libraries back into the fmod-jni.jar file (which is just a zip with the extension renamed to .jar - so you can probably just recreate the file.
After that, I made sure the temporary copy of the libfmod.so files were not left behind to conflict, so I deleted the /tmp/jnigen folder
I suspect the developers should probably do this on future packagings of linux versions.
With glibc version 2.42, they introduced a tunable to ensure compatibility.
You can check your glibc version with:
$ ldd --version
You can run the game with:
$ GLIBC_TUNABLES=glibc.rtld.execstack=2 ./wildermyth
Using execstack or updating fmod libraries are probably more elegant ways but hey :/