Unity Linux IDE - dll not found exception fmodstudioL

I have FMOD (2.0.3) working fine on Windows and OSX. On Linux IDE (Unity 2018.4.5) all I can get out of it is a DLL not found exception for fmodstudioL, same in the build, it cannot find the dll and no information as to why. I’ve tried changing the platform settings on the .dll files but it’s making no difference. What is the magic bullet to get this to work as it just doesn’t appear to function as delivered in the unity package.

What is the exact error you are getting for the log?

I did get a bit further but it is still not working properly.
The issue appears to be that it is reading the project path information from the fmod project (windows project) and then trying to install things in unity on linux with the disk identifier of H: (the disk my FMOD project was on in windows). This causes all kinds of issues as H: is not a valid mount point on Linux and unity basically creates a folder called H: in streaming assets.
It’s a mess and I don’t think I can unpick it.

I’ll get some error messages off my linux machine a bit later today and post them in here.

image

I tested installing unity imtegration into a brand new unity project. It imports ok but the moment you open a fmod project and add it into the fmod settings the console gets spammed with dll not found exceptions.
It creates so many of them that eventually your whole machine locks up due to memory being full of fmod dll not found errors.

Unity 2018.4.6 for Linux
FMOD 2.00.03

This particular issue is now holding up our whole release schedule for our product, windows and osx work fine, Linux not at all. Due to us using burst compiler we have to compile on the platforms we release on and for Linux this is a show stopper.

Just found a workaround for builds - copying the .so into the plugins directory has got it working. However still no joy in the IDE.

1 Like

Having the same/similar issue on Linux. DllNotFoundException: fmodstudioL at Assets/Plugins/FMOD/src/Runtime/wrapper/fmod_studio.cs:843

Catfink thanks for the build workaround. Hoping for more info on this.

hey tommyvisic …

The continuous .dll not found errors eventually fill memory and crash the whole machine. However, I found that during a build this stops and it just does the build activity and finishes ok. Once the build is complete go to the plugins directory in your IDE project assets folder and find all the libraries (all files ending in .so) that are in there for linux and copy them into your build after it has finished in the directory /projectname_data/Plugins/

The build should run ok - mine does.

1 Like

Awesome, I see. Thanks much. Unfortunately as you said, it looks like we’re still out of luck when it comes to being able to use the Unity Editor + FMOD on Linux. I’ll keep poking around a little more. Thanks again.

well it turns out that my assumption that it does not affect builds was not quite true. The errors happening in the IDE due to it not being unable to find the .dll files seriously affect build times. My project took 24 hours to build compared to a couple of hours on windows. This really does need fixing.

Given the IDE FMOD stuff doesn’t work in Linux IDE, I have just deleted all the editor scripts to stop it thrashing. Now you get no project errors and can build and run without problems. Just FMOD doesn’t work in the IDE - for builds just copy the .so files over into your project build after it is built.

Thanks for sharing catfink. Much appreciated. I’m hoping for a proper fix from FMOD as I’d like to use my Linux laptop for development w/o removing the editor scripts =).

FMOD folks: please let me know if I can provide any info around this to help. Loving FMOD and looking forward to using it more.

You and me both - nerfing the editor scripts to make it stop spewing errors is a long way from a working system on linux. Basically none of it works, either editor or build without serious manual intervention. Same as you I love the product just a massive issue trying to use it when you have to build on a linux system (we have to because we use burst compiler).

The main issue appears to be that the LowLevel library is unable to be found, this will require more investigation.