Transistor Steam game on Manjaro

Can’t start the game: System.DllNotFoundException: libfmodstudio.so.4
Hi, having a problem, I got the following exit:

at GSGE.AudioManager.Preload () [0x0000d] in <ea74f9a86dc44b6fbd3376d91ace8eb3>:0
at GSGE.Code.GUI.LaunchScreen+<>c__DisplayClass9.<MapLoad>b__7 () [0x00035] in <ea74f9a86dc44b6fbd3376d91ace8eb3>:0
at System.Threading.Tasks.Task.InnerInvoke () [0x0000f] in <b6017b108c4148adad3826865cf5dd25>:0
at System.Threading.Tasks.Task.Execute () [0x00010] in <b6017b108c4148adad3826865cf5dd25>:0
--- End of inner exception stack trace ---
at GSGE.Code.GUI.LaunchScreen.Update (Microsoft.Xna.Framework.GameTime gameTime, System.Boolean otherScreenHasFocus, System.Boolean coveredByOtherScreen) [0x00070] in <ea74f9a86dc44b6fbd3376d91ace8eb3>:0
at GSGE.ScreenManager.updateScreen (Microsoft.Xna.Framework.GameTime gameTime, System.Boolean otherScreenHasFocus, System.Boolean coveredByOtherScreen, GSGE.GameScreen screen) [0x00002] in <ea74f9a86dc44b6fbd3376d91ace8eb3>:0
at GSGE.ScreenManager.updateInternal (Microsoft.Xna.Framework.GameTime gameTime) [0x00088] in <ea74f9a86dc44b6fbd3376d91ace8eb3>:0
at GSGE.ScreenManager.Update (Microsoft.Xna.Framework.GameTime gameTime) [0x00002] in <ea74f9a86dc44b6fbd3376d91ace8eb3>:0
at Microsoft.Xna.Framework.Game.<.cctor>b__19 (Microsoft.Xna.Framework.IUpdateable updateable, Microsoft.Xna.Framework.GameTime gameTime) [0x00000] in <213e53b0c5d5423a96061fe35f549489>:0
at Microsoft.Xna.Framework.Game+SortingFilteringCollection`1[T].ForEachFilteredItem[TUserData] (System.Action`2[T1,T2] action, TUserData userData) [0x0007d] in <213e53b0c5d5423a96061fe35f549489>:0
at Microsoft.Xna.Framework.Game.Update (Microsoft.Xna.Framework.GameTime gameTime) [0x00000] in <213e53b0c5d5423a96061fe35f549489>:0
at GSGE.App.Update (Microsoft.Xna.Framework.GameTime gameTime) [0x0007a] in <ea74f9a86dc44b6fbd3376d91ace8eb3>:0
at Microsoft.Xna.Framework.Game.DoUpdate (Microsoft.Xna.Framework.GameTime gameTime) [0x00014] in <213e53b0c5d5423a96061fe35f549489>:0
at Microsoft.Xna.Framework.Game.Tick () [0x0014f] in <213e53b0c5d5423a96061fe35f549489>:0
at Microsoft.Xna.Framework.SDL2_GamePlatform.RunLoop () [0x003c7] in <213e53b0c5d5423a96061fe35f549489>:0
at Microsoft.Xna.Framework.Game.Run (Microsoft.Xna.Framework.GameRunBehavior runBehavior) [0x00083] in <213e53b0c5d5423a96061fe35f549489>:0
at Microsoft.Xna.Framework.Game.Run () [0x0000c] in <213e53b0c5d5423a96061fe35f549489>:0
at Game.Windows.Program.Run (GSGE.IBugReporter[] bugReporters) [0x00010] in <4c295ea322554ad4a8420e8d7bcdfb1c>:0
---> (Inner Exception #0) System.DllNotFoundException: libfmodstudio.so.4
at GSGE.AudioManager.Preload () [0x0000d] in <ea74f9a86dc44b6fbd3376d91ace8eb3>:0
at GSGE.Code.GUI.LaunchScreen+<>c__DisplayClass9.<MapLoad>b__7 () [0x00035] in <ea74f9a86dc44b6fbd3376d91ace8eb3>:0
at System.Threading.Tasks.Task.InnerInvoke () [0x0000f] in <b6017b108c4148adad3826865cf5dd25>:0
at System.Threading.Tasks.Task.Execute () [0x00010] in <b6017b108c4148adad3826865cf5dd25>:0 <---

/mnt/Files/steam/steamapps/common/Transistor/Transistor: line 35: 4675 Killed ./Transistor.bin.x86_64 $@

Get the same output on Manjaro, drivers updated, system updated, got it running on a Linux Mint distribution (without doing anything), but I rarely used it and I want it to work on my Manjaro Distro which is the one I used daily.

Tried adding:

LD_LIBRARY_PATH=$SYSTEM_LD_LIBRARY_PATH
LD_PRELOAD="/usr/lib/libasound.so.2:/usr/lib64/libasound.so.2"

and tried the path to the game files:

LD_LIBRARY_PATH="/mnt/Files/steam/steamapps/common/Transistor/lib/libfmodstudio.so.4:/mnt/Files/steam/steamapps/common/Transistor/lib64/libfmodstudio.so.4"

a bit more info:

salvetticos@localhost:/mnt/Files/salvetticos> ldd /mnt/Files/steam/steamapps/common/Transistor/lib/libfmodstudio.so.4
linux-gate.so.1 (0xf7f07000)
librt.so.1 => /lib/librt.so.1 (0xf7d06000)
libfmod.so.4 => not found
libstdc++.so.6 => /lib/libstdc++.so.6 (0xf7aa0000)
libm.so.6 => /lib/libm.so.6 (0xf7982000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0xf794c000)
libpthread.so.0 => /lib/libpthread.so.0 (0xf7947000)
libc.so.6 => /lib/libc.so.6 (0xf770e000)
/lib/ld-linux.so.2 (0xf7f09000)
salvetticos@localhost:/mnt/Files/salvetticos> ldd /mnt/Files/steam/steamapps/common/Transistor/lib64/libfmodstudio.so.4
linux-vdso.so.1 (0x00007ff457bad000)
librt.so.1 => /lib64/librt.so.1 (0x00007ff457b89000)
libfmod.so.4 => not found
libstdc++.so.6 => /lib64/libstdc++.so.6 (0x00007ff457200000)
libm.so.6 => /lib64/libm.so.6 (0x00007ff457a92000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007ff457a8d000)
libc.so.6 => /lib64/libc.so.6 (0x00007ff456e00000)
/lib64/ld-linux-x86-64.so.2 (0x00007ff457baf000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007ff457a60000)

Nothing worked, anyone had this problem and solved it?

Welcome to the forum! :wave:

If you’re referring to this Transistor game, it’s native. There is no reason to use a compatibility layer like Proton or Wine.

Please edit your post to use proper formatting so it’s easier to read.

Please see:

3 Likes

Sorry, I edited the post…

I’m using the native version, no proton, nor wine nor any of the compatibility options.

Thanks.

Hey @salvettic, I personally played it on my Manjaro (nice game really) and I did not run into any issues out of the box. You might have some external applications like gamescope or MangoHud messing with it possibly? (I personally used MangoHud too but I did not run into any problems.) You can try stopping external applications and overlays to narrow it down.

There is a slight mistake here, you need to point to the folder with the .so files instead of the file directly. So, for an example, you can try this in the steam launch options for Transister (steam changes path in to the game folder when it runs the game, so you probably wont need the full path):

LD_LIBRARY_PATH="$LD_LIBRARY_PATH:lib/:lib64/" %command%

Just in case the relative path does not work, try the full path to the folders:

LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/mnt/Files/steam/steamapps/common/Transistor/lib:/mnt/Files/steam/steamapps/common/Transistor/lib64" %command%

It would be good to verify the files integrity from Steam if you havent already.

Thanks for answering!

I’m running it directly from Steam, and from the terminal to copy the error log.

I tried the the alternatives you provided, on the terminal the output is the same, running it on Steam, instead of crashing back to desktop I get a “Transistor.bin.x86_64” Is Not Responding message.

Thanks again for answering!

You can still view the console output of Steam and games when they running through the GUI by looking at: ~/.local/share/Steam/logs/console-linux.txt

Basically:

  • Open the options tab for Transistor on the library page
  • on the “Launch Options” field, add that command
  • alt-tab to a terminal and run: tail -f ~/.local/share/Steam/logs/console-linux.txt
  • click play on the steam client and start watching the terminal

It might as well be something else that might be messing with it. Do you use any gaming related software/overlays? Like gamemode, gamescope, MangoHud and so on? Also, did you try the “Verify files” under “Installed Files” section in the properties window?

Thanks, looking at console-linux.txt I found the same error regarding the libfmodstudio.so.4.
Verifying the files was one of the first things I tried… tried again, everything seems to be fine.
As I said, one of the strangest things for me is that the same installation works perfect under Linux Mint… I guess I’ll just play it there. Still, it’s very frustrating not being able to get it to work.

Thanks, this is a wonderful community, I got responses in the day, the steam forum post is just sitting there, it seems that no one even looked at it.

1 Like

Basically libfmod is not found. In Linux Mint there is such a library?

it’s in the game directory, and part of the tried solutions was to pass the path to the game launcher-

ok share it then:

tree /mnt/Files/steam/steamapps/common/Transistor/

libfmodstudio.so.4 seems to be there, but not libfmod.so.4.

LD_PRELOAD="/usr/lib64/libfmod.so.4" %command%

Did you acually tried to run it when installed on the local disk and not on a another mountpoint?

TL;DR

Partial fix but the game wont have audio working (add this to your launch options):

env LD_PRELOAD="$STEAM_COMPAT_INSTALL_PATH/lib64/libfmod.so.4:$LD_PRELOAD" %command%

Diagnosis

Hello, been a while. Seeing the new messages in the thread, I thought I should run the game and see for myself (yes, I did not try running the game when I first answered above. sorry :3). Interesting enough, I am running into the same issue as @salvettic in my installation. I remember playing this last December or so flawlessly, so I cant say when this issue started to happen.

Here is the tree view of my installation: https://0x0.st/8_HO.txt (ignore env.txt, tree.txt and Transistor.old files. thats me trying to diagnose this just now.) The libfmod* files are packaged with the game and not the system it seems.

They are not in the /usr/lib64 path, it should point to the relevant file under <game install path>/{lib/lib64}/libfmod* files.

Because the first error message talks about libfmodstudio.so.4, doing this:

env LD_PRELOAD="$STEAM_COMPAT_INSTALL_PATH/lib64/libfmodstudio.so.4:$LD_PRELOAD" %command%

Makes the game not start at all and you will see this in the steam logs:

[2025-04-05 17:50:35] /home/comrade/.local/share/Steam/ubuntu12_32/steam-launch-wrapper: error while loading shared libraries: libfmod.so.4: cannot open shared object file: No such file or directory

BUT this works:

env LD_PRELOAD="$STEAM_COMPAT_INSTALL_PATH/lib64/libfmod.so.4:$LD_PRELOAD" %command%

The game starts and plays as usual… BUT there is no sound D:

I can combine this with MangoHud and other graphics stuff I have been using like this:

env LD_PRELOAD="$STEAM_COMPAT_INSTALL_PATH/lib64/libfmod.so.4:$LD_PRELOAD" runsteam %command%
Contents of my "runsteam" script:
#!/usr/bin/sh

export __NV_PRIME_RENDER_OFFLOAD=1
export __VK_LAYER_NV_optimus="NVIDIA_only"
export __GLX_VENDOR_LIBRARY_NAME="nvidia"

#export DXVK_FRAME_RATE=30
#export DXVK_HUD="full"
#export DXVK_CONFIG_FILE="/mnt/chonky/comrade/Shared/dxvk.conf"

exec mangohud "$@"

The only issue is the lack of sound as mentioned in the previous reply. I dont see any errors anywhere related to this.

I tried the LD_LIBRARY_PATH approach too. It does not seem to work when you define it in launch options field in Steam. But it sort of does something when you add it to the shell script named Transistor in the folder where the game is installed.

So, when I do this on launch options;

runsteam %command%

and add this patch to the Transistor script:

#!/bin/bash
# MonoKickstart Shell Script
# Written by Ethan "flibitijibibo" Lee

# Move to script's directory
cd "`dirname "$0"`"

# Get the system architecture
UNAME=`uname`
ARCH=`uname -m`
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$STEAM_COMPAT_INSTALL_PATH/lib64:$STEAM_COMPAT_INSTALL_PATH/lib" # patch

# MonoKickstart picks the right libfolder, so just execute the right binary.
if [ "$UNAME" == "Darwin" ]; then
	# ... Except on OSX.
	export DYLD_LIBRARY_PATH=$DYLD_LIBRARY_PATH:./osx/

	# El Capitan is a total idiot and wipes this variable out, making the
	# Steam overlay disappear. This sidesteps "System Integrity Protection"
	# and resets the variable with Valve's own variable (they provided this
	# fix by the way, thanks Valve!). Note that you will need to update your
	# launch configuration to the script location, NOT just the app location
	# (i.e. Kick.app/Contents/MacOS/Kick, not just Kick.app).
	# -flibit
	if [ "$STEAM_DYLD_INSERT_LIBRARIES" != "" ] && [ "$DYLD_INSERT_LIBRARIES" == "" ]; then
		export DYLD_INSERT_LIBRARIES="$STEAM_DYLD_INSERT_LIBRARIES"
	fi

	./Transistor.bin.osx $@
else
	if [ "$ARCH" == "x86_64" ]; then
		./Transistor.bin.x86_64 $@
	else
		./Transistor.bin.x86 $@
	fi
fi

You can see the changes reflected in the process but it fails with rather cryptid message :confused:

[2025-04-05 18:27:00] System.NullReferenceException: Object reference not set to an instance of an object
[2025-04-05 18:27:00]   at GSGE.AudioManager.OnAppActiveChange (System.Boolean isActive) [0x0008c] in <ea74f9a86dc44b6fbd3376d91ace8eb3>:0
[2025-04-05 18:27:00]   at GSGE.App.Update (Microsoft.Xna.Framework.GameTime gameTime) [0x0004e] in <ea74f9a86dc44b6fbd3376d91ace8eb3>:0
[2025-04-05 18:27:00]   at Microsoft.Xna.Framework.Game.DoUpdate (Microsoft.Xna.Framework.GameTime gameTime) [0x00014] in <213e53b0c5d5423a96061fe35f549489>:0
[2025-04-05 18:27:00]   at Microsoft.Xna.Framework.Game.Tick () [0x0014f] in <213e53b0c5d5423a96061fe35f549489>:0
[2025-04-05 18:27:00]   at Microsoft.Xna.Framework.SDL2_GamePlatform.RunLoop () [0x003c7] in <213e53b0c5d5423a96061fe35f549489>:0
[2025-04-05 18:27:00]   at Microsoft.Xna.Framework.Game.Run (Microsoft.Xna.Framework.GameRunBehavior runBehavior) [0x00083] in <213e53b0c5d5423a96061fe35f549489>:0
[2025-04-05 18:27:00]   at Microsoft.Xna.Framework.Game.Run () [0x0000c] in <213e53b0c5d5423a96061fe35f549489>:0
[2025-04-05 18:27:00]   at Game.Windows.Program.Run (GSGE.IBugReporter[] bugReporters) [0x00010] in <4c295ea322554ad4a8420e8d7bcdfb1c>:0
1 Like

Wine/Proton is a fantastic achievement for gaming on Linux but the one downside is that developers no longer care about native Linux versions. I have many older games in my Steam library where the Windows version works better than the native one…