FMOD issue with Unity 5.3.2

In trying to build for iOS I am getting the following error in Xcode:

[redacted]/Classes/Native/Bulk_Assembly-CSharp-firstpass_1.cpp:12881:37: Use of undeclared identifier ‘____guid_marshaled_dereferenced’

I am using the legacy integration 1.07.06, although the error was also present with 1.07.02. Updating the entire project, which is near completion, to integration 2.0 is thoroughly impractical at this point.

There was no problem with Unity 5.3.1. Using Bitcode or not makes no difference.

Any ideas for a workaround? Would dearly love to be able to build, and 5.3.2 has fixes which my project requires.

Thanks!

Edited to add: using Xcode 7.2.

edited my answer: XCode version requested.

Xcode 7.2

5.3.2 patch 1 has been released - I don’t see any IL2CPP changes listed that sound related to your issue but it might be worth a try.

You might also try to see if one of the 5.3.1 patch releases fixes your original project issues without introducing this IL2CPP bug.

I would also report the issue to Unity ASAP.

EDIT:
I’ve just done my own testing on both Legacy and V2 Integrations. Using Unity 5.3.2f1 and XCode 7.2 and had no errors.

Can you update your post with XCode version?

Ugh, I failed to note that I am also using 5.3.2p1. My apologies. Unfortunately there is a fix in this specific patch that I absolutely need (to do with the alignment on non-dynamic text).

I have submitted this as a bug to Unity also.

Just a small note to say I’m seeing the same issue in 5.3.2 p1… just in case that saves someone some time. Apologies for adding this as an ‘answer’, this is my first post and I didn’t notice the comment button.

Oh and there were no issues in 5.3.1p4.
Also I’m running FMOD 1.07.05 integration 2.0.

edited my answer: XCode version requested.

Sorry Xcode 7.2

Working around the initial IL2CPP compile issues was easy enough.

I immediately ran into this issue http://forum.unity3d.com/threads/ios-player-5-3-2p1-throw-exception-on-system-enum-tostring.382765/ which I was able to work around (in a very messy way) in order to get as far as loading a bank.

I then ran up against another issue that I don’t see a way around.

At this stage I’m going to say that Unity 5.3.2p1 on iOS is unsupported with no plans to fix.

Another small note to say the same issue exists in Unity beta 5.4.0 b4.

Anyone game to try 5.3.2 p2 ? I think I’ve had enough of the 2 hour process. It would be good if someone could look at the change log and see if there are any note worthy / relevant fixes :).

Just tried 5.2.3p2 - issue still exists, no change.

It looks like they may have fixed the secondary/tertiary issues I ran into. I’ll test and see if I can workaround enough of the remaining bugs to run on device.

Here is the current situation regarding recent Unity releases and our integration running on iOS devices:

5.3.2f1 and 5.3.1p4 will work with any release of the integration

5.3.2p2 works if you update fmod_studio.cs from the link below. The changes will also be included in 1.07.07
Link for Integration V2
Link for Legacy Unity Integration

5.3.2p1 does not work and will not be fixed.

2 Likes

I’m looking forward to the .07 release, got any ETA on that?

Thanks, Nicholas!

I am getting the following errors when I update fmod_studio.cs to the one in the link:

Assets/Plugins/FMOD/FMOD_StudioSystem.cs(28,45): error CS0234: The type or namespace name ATTRIBUTES_3D' does not exist in the namespaceFMOD.Studio’. Are you missing an assembly reference?

Assets/Plugins/FMOD/FMOD_StudioSystem.cs(38,45): error CS0234: The type or namespace name ATTRIBUTES_3D' does not exist in the namespaceFMOD.Studio’. Are you missing an assembly reference?

@Anthony: Updated post with a link for legacy integration users such as yourself.

@Tore: another week or two

That is great! Thank you!

I am still getting an error in the editor, but it does not prevent me running or building so I’m ok for now. FYI, here it is:

NullReferenceException: Object reference not set to an instance of an object
UnityEditor.Editor.get_referenceTargetIndex () (at /Users/builduser/buildslave/unity/build/artifacts/generated/common/editor/EditorBindings.gen.cs:131)
UnityEditor.AssetImporterInspector.get_referenceTargetIndex () (at /Users/builduser/buildslave/unity/build/Editor/Mono/ImportSettings/AssetImporterInspector.cs:22)
UnityEditor.Editor.get_target () (at /Users/builduser/buildslave/unity/build/artifacts/generated/common/editor/EditorBindings.gen.cs:121)
UnityEditor.AssetImporterInspector.OnDisable () (at /Users/builduser/buildslave/unity/build/Editor/Mono/ImportSettings/AssetImporterInspector.cs:71)
UnityEditor.AssetDatabase:DeleteAsset(String)
FMODEditorExtension:.cctor() (at Assets/Plugins/FMOD/Editor/FMODEditorExtension.cs:103)
UnityEditor.EditorAssemblies:SetLoadedEditorAssemblies(Assembly[])