Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

[FIXED] 5.6 IOS IL2CPP build fails

Discussion in 'Editor & General Support' started by DavidSmit, Apr 2, 2017.

  1. DavidSmit

    DavidSmit

    Joined:
    Apr 1, 2014
    Posts:
    50
    I'm getting this repeated error when I try to build a iOS build with IL2CPP on Unity 5.6.
    It's roughly at 75% of the build process.
    The error is not there on Mono backend. (however Xcode gives a '32bit support missing' error)

    Code (CSharp):
    1. Failed running /Applications/Unity/Unity.app/Contents/Tools/UnusedByteCodeStripper2/UnusedBytecodeStripper2.exe --api NET_2_0_Subset -out "/Users/davidsmit/pipecosystem/Temp/StagingArea/Data/Managed/tempStrip" -l none -c link -b true -x "/Applications/Unity/PlaybackEngines/iOSSupport/Whitelists/Core.xml" -f "/Applications/Unity/Unity.app/Contents/il2cpp/LinkerDescriptors" -x "/Users/davidsmit/pipecosystem/Temp/StagingArea/Data/Managed/../platform_native_link.xml" -x "/Users/davidsmit/pipecosystem/Temp/StagingArea/Data/methods_pointedto_by_uievents.xml" -x "/Users/davidsmit/pipecosystem/Temp/StagingArea/Data/preserved_derived_types.xml" -x "/Applications/Unity/PlaybackEngines/iOSSupport/Whitelists/AI.xml" -x "/Applications/Unity/PlaybackEngines/iOSSupport/Whitelists/Animation.xml" -x "/Applications/Unity/PlaybackEngines/iOSSupport/Whitelists/Audio.xml" -x "/Applications/Unity/PlaybackEngines/iOSSupport/Whitelists/Cloth.xml" -x "/Applications/Unity/PlaybackEngines/iOSSupport/Whitelists/Core.xml" -x "/Applications/Unity/PlaybackEngines/iOSSupport/Whitelists/CrashReporting.xml" -x "/Applications/Unity/PlaybackEngines/iOSSupport/Whitelists/IMGUI.xml" -x "/Applications/Unity/PlaybackEngines/iOSSupport/Whitelists/Input.xml" -x "/Applications/Unity/PlaybackEngines/iOSSupport/Whitelists/JSONSerialize.xml" -x "/Applications/Unity/PlaybackEngines/iOSSupport/Whitelists/ParticleSystem.xml" -x "/Applications/Unity/PlaybackEngines/iOSSupport/Whitelists/ParticlesLegacy.xml" -x "/Applications/Unity/PlaybackEngines/iOSSupport/Whitelists/PerformanceReporting.xml" -x "/Applications/Unity/PlaybackEngines/iOSSupport/Whitelists/Physics.xml" -x "/Applications/Unity/PlaybackEngines/iOSSupport/Whitelists/Physics2D.xml" -x "/Applications/Unity/PlaybackEngines/iOSSupport/Whitelists/Terrain.xml" -x "/Applications/Unity/PlaybackEngines/iOSSupport/Whitelists/TerrainPhysics.xml" -x "/Applications/Unity/PlaybackEngines/iOSSupport/Whitelists/TextRendering.xml" -x "/Applications/Unity/PlaybackEngines/iOSSupport/Whitelists/UI.xml" -x "/Applications/Unity/PlaybackEngines/iOSSupport/Whitelists/UNET.xml" -x "/Applications/Unity/PlaybackEngines/iOSSupport/Whitelists/UnityAds.xml" -x "/Applications/Unity/PlaybackEngines/iOSSupport/Whitelists/UnityAnalytics.xml" -x "/Applications/Unity/PlaybackEngines/iOSSupport/Whitelists/UnityConnect.xml" -x "/Applications/Unity/PlaybackEngines/iOSSupport/Whitelists/UnityWebRequest.xml" -x "/Applications/Unity/PlaybackEngines/iOSSupport/Whitelists/UnityWebRequestAudio.xml" -x "/Applications/Unity/PlaybackEngines/iOSSupport/Whitelists/VR.xml" -x "/Applications/Unity/PlaybackEngines/iOSSupport/Whitelists/Vehicles.xml" -x "/Applications/Unity/PlaybackEngines/iOSSupport/Whitelists/Video.xml" -x "/Applications/Unity/PlaybackEngines/iOSSupport/Whitelists/Web.xml" -d "/Users/davidsmit/pipecosystem/Temp/StagingArea/Data/Managed" -a  "/Users/davidsmit/pipecosystem/Temp/StagingArea/Data/Managed/Assembly-CSharp-firstpass.dll" -a  "/Users/davidsmit/pipecosystem/Temp/StagingArea/Data/Managed/Assembly-CSharp.dll" -a  "/Users/davidsmit/pipecosystem/Temp/StagingArea/Data/Managed/Assembly-UnityScript-firstpass.dll" -a  "/Users/davidsmit/pipecosystem/Temp/StagingArea/Data/Managed/UnityEngine.Advertisements.dll" -a  "/Users/davidsmit/pipecosystem/Temp/StagingArea/Data/Managed/UnityEngine.UI.dll" -a  "/Users/davidsmit/pipecosystem/Temp/StagingArea/Data/Managed/UnityEngine.Analytics.dll" -a  "/Users/davidsmit/pipecosystem/Temp/StagingArea/Data/Managed/DOTween.dll" -a  "/Users/davidsmit/pipecosystem/Temp/StagingArea/Data/Managed/DOTweenPro.dll" -a  "/Users/davidsmit/pipecosystem/Temp/StagingArea/Data/Managed/ES2.dll"
    2.  
    3. stdout:
    4. SweepReport:
    5. Mono.Cecil.MethodDefinition (12752) => FieldType Get(System.String), System.Void Set(System.String,FieldType), System.Void SetStatic(System.String,FieldType), System.Void DebugPrint(System.String,System.String,System.String,System.Object[]), FieldType _Get(System.String), ...
    6. Mono.Cecil.TypeDefinition (2520) => UnityEngine.WeakListenerBindings, UnityEngine.UserAuthorization, UnityEngine.ApplicationInstallMode, UnityEngine.ApplicationSandboxType, UnityEngine.AssetBundleManifest, ...
    7. Mono.Cecil.FieldDefinition (948) => AdvertisingIdentifierCallback OnAdvertisingIdentifierCallback, UnityEngine.Application/LogCallback modreq(System.Runtime.CompilerServices.IsVolatile) s_RegisterLogCallbackDeprecated, System.String unsupportedIdentifier, System.Byte kIsVisibleMask, System.Byte kDistanceMask, ...
    8. Fatal error in Mono CIL Linker
    9. System.ArgumentException: Member 'UnityEngine.AudioClip' is declared in another module and needs to be imported
    10.   at Mono.Cecil.MetadataBuilder.LookupToken (Mono.Cecil.IMetadataTokenProvider provider) [0x00027] in <0304696c64424476882bed0a697f98eb>:0
    11.   at Mono.Cecil.SignatureWriter.MakeTypeDefOrRefCodedRID (Mono.Cecil.TypeReference type) [0x00000] in <0304696c64424476882bed0a697f98eb>:0
    12.   at Mono.Cecil.SignatureWriter.WriteTypeSignature (Mono.Cecil.TypeReference type) [0x00161] in <0304696c64424476882bed0a697f98eb>:0
    13.   at Mono.Cecil.SignatureWriter.WriteMethodSignature (Mono.Cecil.IMethodSignature method) [0x00085] in <0304696c64424476882bed0a697f98eb>:0
    14.   at Mono.Cecil.MetadataBuilder.GetMethodSignature (Mono.Cecil.IMethodSignature method) [0x00006] in <0304696c64424476882bed0a697f98eb>:0
    15.   at Mono.Cecil.MetadataBuilder.AddMethod (Mono.Cecil.MethodDefinition method) [0x0003c] in <0304696c64424476882bed0a697f98eb>:0
    16.   at Mono.Cecil.MetadataBuilder.AddMethods (Mono.Cecil.TypeDefinition type) [0x00013] in <0304696c64424476882bed0a697f98eb>:0
    17.   at Mono.Cecil.MetadataBuilder.AddType (Mono.Cecil.TypeDefinition type) [0x000a2] in <0304696c64424476882bed0a697f98eb>:0
    18.   at Mono.Cecil.MetadataBuilder.AddTypeDefs () [0x00018] in <0304696c64424476882bed0a697f98eb>:0
    19.   at Mono.Cecil.MetadataBuilder.BuildTypes () [0x00014] in <0304696c64424476882bed0a697f98eb>:0
    20.   at Mono.Cecil.MetadataBuilder.BuildModule () [0x0007e] in <0304696c64424476882bed0a697f98eb>:0
    21.   at Mono.Cecil.MetadataBuilder.BuildMetadata () [0x00000] in <0304696c64424476882bed0a697f98eb>:0
    22.   at Mono.Cecil.ModuleWriter+<>c.<BuildMetadata>b__1_0 (Mono.Cecil.MetadataBuilder builder, Mono.Cecil.MetadataReader _) [0x00000] in <0304696c64424476882bed0a697f98eb>:0
    23.   at Mono.Cecil.ModuleDefinition.Read[TItem,TRet] (TItem item, System.Func`3[T1,T2,TResult] read) [0x00029] in <0304696c64424476882bed0a697f98eb>:0
    24.   at Mono.Cecil.ModuleWriter.BuildMetadata (Mono.Cecil.ModuleDefinition module, Mono.Cecil.MetadataBuilder metadata) [0x0000f] in <0304696c64424476882bed0a697f98eb>:0
    25.   at Mono.Cecil.ModuleWriter.WriteModuleTo (Mono.Cecil.ModuleDefinition module, System.IO.Stream stream, Mono.Cecil.WriterParameters parameters) [0x000b7] in <0304696c64424476882bed0a697f98eb>:0
    26.   at Mono.Cecil.ModuleDefinition.Write (System.IO.Stream stream, Mono.Cecil.WriterParameters parameters) [0x00022] in <0304696c64424476882bed0a697f98eb>:0
    27.   at Mono.Cecil.ModuleDefinition.Write (System.String fileName, Mono.Cecil.WriterParameters parameters) [0x0000a] in <0304696c64424476882bed0a697f98eb>:0
    28.   at Mono.Cecil.AssemblyDefinition.Write (System.String fileName, Mono.Cecil.WriterParameters parameters) [0x00000] in <0304696c64424476882bed0a697f98eb>:0
    29.   at Mono.Linker.Steps.OutputStep.OutputAssembly (Mono.Cecil.AssemblyDefinition assembly) [0x0004d] in <6b6a6b3d682b49c4a8b0c4f50e76a8a6>:0
    30.   at Mono.Linker.Steps.OutputStep.ProcessAssembly (Mono.Cecil.AssemblyDefinition assembly) [0x00001] in <6b6a6b3d682b49c4a8b0c4f50e76a8a6>:0
    31.   at Mono.Linker.Steps.BaseStep.Process (Mono.Linker.LinkContext context) [0x00031] in <6b6a6b3d682b49c4a8b0c4f50e76a8a6>:0
    32.   at Mono.Linker.Pipeline.Process (Mono.Linker.LinkContext context) [0x00019] in <6b6a6b3d682b49c4a8b0c4f50e76a8a6>:0
    33.   at Mono.Linker.Driver.Run (System.Collections.Generic.IEqualityComparer`1[T] typeComparer, System.Collections.Generic.IEqualityComparer`1[T] methodComparer) [0x003e2] in <6b6a6b3d682b49c4a8b0c4f50e76a8a6>:0
    34.   at Mono.Linker.Driver.RunDriverWithErrorHandling (Mono.Linker.Driver driver, System.Collections.Generic.IEqualityComparer`1[T] typeComparer, System.Collections.Generic.IEqualityComparer`1[T] methodComparer) [0x00001] in <6b6a6b3d682b49c4a8b0c4f50e76a8a6>:0
    35.   at Mono.Linker.Driver.RunDriver (Mono.Linker.Driver driver, System.Collections.Generic.IEqualityComparer`1[T] typeComparer, System.Collections.Generic.IEqualityComparer`1[T] methodComparer) [0x00002] in <6b6a6b3d682b49c4a8b0c4f50e76a8a6>:0
    36. stderr:
    37.  
    38. UnityEngine.Debug:LogError(Object)
    39. UnityEditorInternal.Runner:RunManagedProgram(String, String, String, CompilerOutputParserBase, Action`1) (at /Users/builduser/buildslave/unity/build/Editor/Mono/BuildPipeline/BuildUtils.cs:96)
    40. UnityEditorInternal.AssemblyStripper:RunAssemblyLinker(IEnumerable`1, String&, String&, String, String) (at /Users/builduser/buildslave/unity/build/Editor/Mono/BuildPipeline/AssemblyStripper.cs:102)
    41. UnityEditorInternal.AssemblyStripper:StripAssembliesTo(String[], String[], String, String, String&, String&, String, IIl2CppPlatformProvider, IEnumerable`1) (at /Users/builduser/buildslave/unity/build/Editor/Mono/BuildPipeline/AssemblyStripper.cs:95)
    42. UnityEditorInternal.AssemblyStripper:RunAssemblyStripper(String, IEnumerable, String, String[], String[], String, IIl2CppPlatformProvider, RuntimeClassRegistry) (at /Users/builduser/buildslave/unity/build/Editor/Mono/BuildPipeline/AssemblyStripper.cs:201)
    43. UnityEditorInternal.AssemblyStripper:StripAssemblies(String, IIl2CppPlatformProvider, RuntimeClassRegistry) (at /Users/builduser/buildslave/unity/build/Editor/Mono/BuildPipeline/AssemblyStripper.cs:126)
    44. UnityEditorInternal.IL2CPPBuilder:Run() (at /Users/builduser/buildslave/unity/build/Editor/Mono/BuildPipeline/Il2Cpp/IL2CPPUtils.cs:143)
    45. UnityEditorInternal.IL2CPPUtils:RunIl2Cpp(String, String, IIl2CppPlatformProvider, Action`1, RuntimeClassRegistry, Boolean) (at /Users/builduser/buildslave/unity/build/Editor/Mono/BuildPipeline/Il2Cpp/IL2CPPUtils.cs:34)
    46. UnityEditor.HostView:OnGUI()
    47.  
     
  2. JoshPeterson

    JoshPeterson

    Unity Technologies

    Joined:
    Jul 21, 2014
    Posts:
    6,921
    We have seen a similar issue before. This can happen when one of the assemblies in your project was not updated to the latest Unity API properly. Unfortunately the error does not indicate which assembly is the problem.

    If you have any managed assemblies in the project, you can manually update them by selecting the "Reimport" option from the context menu on the assembly in the project browser.
     
    DavidSmit likes this.
  3. DavidSmit

    DavidSmit

    Joined:
    Apr 1, 2014
    Posts:
    50
    Thanks Josh!

    I re-imported the project and it seems to be working again.
    Love the new update, so I'm very happy I can build again!

    Thanks for the quick reply!
    Cheers
     
    Last edited: Apr 3, 2017
  4. NateJC

    NateJC

    Joined:
    Apr 10, 2012
    Posts:
    58
    I wasn't sure which assembly was the culprit, so I just re-imported my entire project. It took ~2 hours (literally), but it worked! Thanks for the pointer Josh & David. =D
     
    DavidSmit and JoshPeterson like this.
  5. greg-harding

    greg-harding

    Joined:
    Apr 11, 2013
    Posts:
    523
    I just hit this problem as well and stumbled onto this thread (after finding a related issue in the tracker and submitting a bug report) because we have the same exception during export for iOS: "System.ArgumentException: Member 'UnityEngine.AudioClip' is declared in another module and needs to be imported".

    The Unity build pipeline doesn't detect that there was an error and the only indication that there's a problem is the export folder is empty. The Editor log shows the exception while running UnusedByteCodeStripper2.

    I'm about to try reimporting the managed assemblies to try to fix things. Unity is magic at a bunch of things but reimporting entire projects is not one of them so I'll leave that option for later :)
     
    Schneider21 likes this.