Distribution of FMOD Studio Libs on Catalina/Big Sur in Integration

hey folks, i ran into this problem of fmodstudiol.dll being blocked on macOS Catalina and higher that’s been pinned. i’m actually a educational materials provider (The Game Audio Institute) who distributes game lessons, and up until now we’ve included the FMOD integration within the game project. well, we found that in Catalina and Big Sur the main FMOD Studio libs in the integration get quarantined by the OS, ostensibly because they’ve been ‘illegally’ imported.

after trying several solutions the end result was that i had to rip out the integration completely from the project, have the online students download the integration manually and then guide them through the setup. because that was the only way the native libraries could be copied so that the system didn’t flag them as a threat.

so, i’m curious - is it at all possible if you include the integration in the project that you can authorize the libraries through the setup? i know that currently if you have the integration installed, the Setup doesn’t run through the library copying/authorizing process which means that any macOS Catalina or Big Sur Mac will flag the libraries and block them.

this macOS system blockage seems like it would also affect any situations where you are collaborating with others via git on Bitbucket. i’m planning on updating a game lesson using FMOD Studio with the integration which means my Mac computer will run it since my libraries are authorized but a collaborator who gets the repo from me would not since their system would flag these as suspect and they would have to be whitelisted. so then if they get their libraries authorized and they push their changes and i sync, now my computer has the ‘foreign’ FMOD library and i would have to authorize. i was completely unable to manually whitelist FMOD libraries and i would hate to have to do it every time i pulled changes.

however, if Setup could run from the beginning and authorize libraries that might help. i suppose the other solution in a shared source scenario is to blacklist the relevant FMOD Studio libraries in the .gitignore file. have you or anyone else tested using FMOD integration 2.2 (2.02.xx) with git-based source control on Macs?

any answers appreciated - thanks!

best,
scott

What version of FMOD are you trying to distribute? How are you distributing it e.g. a zip file maybe?

well, it’s the newest integration for 2.2 at this point. at the moment i’m distributing the integration inside the project, already installed. so there is a zip file but it’s the Unity project folder with the integration installed. this method is fine for macOS Mojave and earlier but Catalina and Big Sur regard the fmod libraries as suspect and quarantine them which breaks FMOD functionality in Unity. i realize this is all well known and the solution is to have no integration and install it individually separately. but i was wondering if setup could be modified to authorize the FMOD libraries without installing it from scratch. it seems to do this on a fresh install when the integration is not previously installed but when it is installed it skips over those steps.

Hm, the thing is, most of this stuff is out of our control - it’s an OS-level system that decides if something is safe or not, not us. So, we play by the rules and sign/notarize everything we produce so that it works when people download it. If you unpack what we ship and then try to repackage it and distribute it again… well, that’s way out of our hands.

hi Andrew - thanks for the clarification but i don’t think the signing or notarizing is the issue - we’re not unpacking the binaries other than the unitypackage file. the one question i would ask is, is it possible to make the integration reinstall completely from scratch without removing it first and reinstalling from the Unity Package? when Setup is run from the FMOD menu in Unity for the first time it does go through this process of copying and authorizing the DLLs. but if run a second time it doesn’t. is it possible to make the reinstall happen from scratch and re-authorize the DLLs?


on a separate front and knowing the issue with distribution of FMOD integration and how it’s authorized to each macOS computer individually, how is that handled when posting FMOD integration installed in a Unity project via Git or other source control? at this point if you had two Mac users working on a Unity/FMOD project the result would be that one or the other’s FMOD integration would be flagged as illegal and blocked. how do you handle that situation?

best,
scott

I think it would be helpful if I could see what you’re distributing and how it’s failing. If you could upload it to your fmod.com account (look in Profile, Uploads) and/or contact me at support@fmod.com I’ll be able to dig into it more.