Unable to compile project for Switch

Hello, I’m not able to compile my game for Nintendo Switch since I added the FMOD to it, but it builds fine for Windows. I’m using Unreal Engine 4.20.

I have no idea if the problem is related to the engine, or related to FMOD, or maybe something I am doing wrong.

These are the erros, all saying that are some undefined references:

4>  C:\Users\marci_000\Projects\Squad51\Plugins\FMODStudio\Source\FMODStudio\Private/FMODAssetTable.cpp:38: error: undefined reference to 'FMOD::Studio::System::getLowLevelSystem(FMOD::System**) const'
4>  C:\Users\marci_000\Projects\Squad51\Plugins\FMODStudio\Source\FMODStudio\Private/FMODAudioComponent.cpp:287: error: undefined reference to 'FMOD::Studio::EventInstance::setParameterValue(char const*, float)'
4>  C:\Users\marci_000\Projects\Squad51\Plugins\FMODStudio\Source\FMODStudio\Private/FMODAudioComponent.cpp:549: error: undefined reference to 'FMOD::Studio::System::getLowLevelSystem(FMOD::System**) const'
4>  C:\Users\marci_000\Projects\Squad51\Plugins\FMODStudio\Source\FMODStudio\Private/FMODAudioComponent.cpp:671: error: undefined reference to 'FMOD::Studio::EventDescription::getParameter(char const*, FMOD_STUDIO_PARAMETER_DESCRIPTION*) const'
4>  C:\Users\marci_000\Projects\Squad51\Plugins\FMODStudio\Source\FMODStudio\Private/FMODAudioComponent.cpp:680: error: undefined reference to 'FMOD::Studio::EventInstance::setParameterValue(char const*, float)'
4>  C:\Users\marci_000\Projects\Squad51\Plugins\FMODStudio\Source\FMODStudio\Private/FMODAudioComponent.cpp:823: error: undefined reference to 'FMOD::Studio::EventInstance::setParameterValue(char const*, float)'
4>  C:\Users\marci_000\Projects\Squad51\Plugins\FMODStudio\Source\FMODStudio\Private/FMODAudioComponent.cpp:904: error: undefined reference to 'FMOD::Studio::EventInstance::getParameter(char const*, FMOD::Studio::ParameterInstance**) const'
4>  C:\Users\marci_000\Projects\Squad51\Plugins\FMODStudio\Source\FMODStudio\Private/FMODAudioComponent.cpp:908: error: undefined reference to 'FMOD::Studio::ParameterInstance::getValue(float*) const'

What I already did:

  • I copied the FMODStudio folder to MyProject/Plugins folder (remember that it works fine on Windows)
  • I also copied the source files and library files of the FMOD for Switch
  • Inside my .uproject file, I have this entry: { “Name”: “FMODStudio”, “Enabled”: true }
  • Inside my build file (.cs), I have this entry: PrivateDependencyModuleNames.AddRange(new string[] { “FMODStudio” });

If there are some step I should have done and I didn’t, I don’t know what it is.

Any help will be appreciated, thanks.

What version of FMOD are you using?
Did you make sure to add the Switch Integration package on top of the base Windows/Mac/Linux Integration?

Never mind. I think I downloaded different versions of FMOD, I didn’t see the version selector combo in the website. It’s working now, thanks.