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

5.5.3p3 iOS Build failing after switching to TextMesh Pro

Discussion in 'UGUI & TextMesh Pro' started by ctaylor_stormgiantstudios, May 23, 2017.

  1. ctaylor_stormgiantstudios

    ctaylor_stormgiantstudios

    Joined:
    Apr 9, 2017
    Posts:
    1
    After switching to TextMesh Pro we have had an issue that is preventing me from building on iOS. It works fine in the editor and on Android.

    Originaly the issue was that is had a conflict with TextMeshPro.dll so I followed another forum post and only enabled the one in the Plugis/Runtime DLL folder. Now I am getting this error and can find no reference to it on the internet. I rolled back to a previous version before TextMesh Pro and it builds fine so the issue is definitely with the IL2CPP converter failing to run something in the TextMesh dll.

    Included below are the crash logs. This is on 5.5.3p3 and unfortunately we can not currently update as it breaks far to much for it to be practical for use to update at the moment.

    Code (CSharp):
    1. IL2CPP error for method 'UnityEngine.AdditionalCanvasShaderChannels UnityEngine.Canvas::get_additionalShaderChannels()' in assembly '/Users/stormgiant/Documents/FlickHeroes/Temp/StagingArea/Data/Managed/System.Core.dll'
    2. Additional information: Build a development build for more information. Unable to resolve [UnityEngine]UnityEngine.AdditionalCanvasShaderChannels.
    3.  
    Code (CSharp):
    1. Failed running /Applications/Unity/Unity.app/Contents/il2cpp/build/il2cpp.exe --convert-to-cpp --emit-null-checks --enable-array-bounds-check --map-file-parser="/Applications/Unity/Unity.app/Contents/Tools/MapFileParser/MapFileParser" --extra-types.file="/Applications/Unity/Unity.app/Contents/il2cpp/il2cpp_default_extra_types.txt" --assembly="/Users/stormgiant/Documents/FlickHeroes/Temp/StagingArea/Data/Managed/Assembly-CSharp-firstpass.dll" --assembly="/Users/stormgiant/Documents/FlickHeroes/Temp/StagingArea/Data/Managed/Assembly-CSharp.dll" --assembly="/Users/stormgiant/Documents/FlickHeroes/Temp/StagingArea/Data/Managed/UnityEngine.Analytics.dll" --assembly="/Users/stormgiant/Documents/FlickHeroes/Temp/StagingArea/Data/Managed/UnityEngine.UI.dll" --assembly="/Users/stormgiant/Documents/FlickHeroes/Temp/StagingArea/Data/Managed/TextMeshPro.dll" --assembly="/Users/stormgiant/Documents/FlickHeroes/Temp/StagingArea/Data/Managed/UnityEngine.dll" --assembly="/Users/stormgiant/Documents/FlickHeroes/Temp/StagingArea/Data/Managed/Mono.Security.dll" --assembly="/Users/stormgiant/Documents/FlickHeroes/Temp/StagingArea/Data/Managed/System.dll" --assembly="/Users/stormgiant/Documents/FlickHeroes/Temp/StagingArea/Data/Managed/mscorlib.dll" --generatedcppdir="/Users/stormgiant/Documents/FlickHeroes/Temp/il2cppOutput/il2cppOutput"
    2.  
    3. stdout:
    4. IL2CPP error for method 'UnityEngine.AdditionalCanvasShaderChannels UnityEngine.Canvas::get_additionalShaderChannels()' in assembly '/Users/stormgiant/Documents/FlickHeroes/Temp/StagingArea/Data/Managed/System.Core.dll'
    5. Additional information: Build a development build for more information. Unable to resolve [UnityEngine]UnityEngine.AdditionalCanvasShaderChannels.
    6. il2cpp.exe didn't catch exception: System.InvalidOperationException: Unable to resolve [UnityEngine]UnityEngine.AdditionalCanvasShaderChannels.
    7.  at Unity.IL2CPP.Common.WindowsRuntimeAwareMetadataResolver.Resolve (Mono.Cecil.TypeReference type) <0x10dad13a0 + 0x002c9> in <filename unknown>:0
    8.  at Mono.Cecil.ModuleDefinition.Resolve (Mono.Cecil.TypeReference type) <0x10dad1260 + 0x00034> in <filename unknown>:0
    9.  at Mono.Cecil.TypeReference.Resolve () <0x10dad11c0 + 0x0003b> in <filename unknown>:0
    10.  at Unity.IL2CPP.NamingComponent.GetWellKnownNameFor (Mono.Cecil.TypeReference typeReference) <0x10f6ee1f0 + 0x000b3> in <filename unknown>:0
    11.  at Unity.IL2CPP.NamingComponent.ForTypeNameInternal (Mono.Cecil.TypeReference typeReference) <0x10f6ee110 + 0x00029> in <filename unknown>:0
    12.  at Unity.IL2CPP.NamingComponent.ForTypeNameOnly (Mono.Cecil.TypeReference type) <0x10f6ee040 + 0x0005d> in <filename unknown>:0
    13.  at Unity.IL2CPP.NamingComponent.ForType (Mono.Cecil.TypeReference typeReference) <0x10f6edfe0 + 0x00035> in <filename unknown>:0
    14.  at Unity.IL2CPP.RuntimeInvokerCollectorComponent.NameForInvoker (Mono.Cecil.TypeReference[] data) <0x10f6ede10 + 0x00099> in <filename unknown>:0
    15.  at Unity.IL2CPP.RuntimeInvokerCollectorComponent.Add (Mono.Cecil.MethodReference method) <0x10f6ed290 + 0x0028d> in <filename unknown>:0
    16.  at Unity.IL2CPP.Metadata.MetadataCollector.<AddMethods>m__7 (Mono.Cecil.MethodDefinition method) <0x10f6ec1d0 + 0x0034c> in <filename unknown>:0
    17.  at Unity.IL2CPP.Metadata.MetadataCollector.AddUnique[T] (System.Collections.Generic.Dictionary`2 items, Unity.IL2CPP.Metadata.T item, System.Action`1 onAdd) <0x10f6e5e10 + 0x000b9> in <filename unknown>:0
    18.  at Unity.IL2CPP.Metadata.MetadataCollector.AddUnique[T] (System.Collections.Generic.Dictionary`2 items, IEnumerable`1 itemsToAdd, System.Action`1 onAdd) <0x10f6e8730 + 0x000ad> in <filename unknown>:0
    19.  at Unity.IL2CPP.Metadata.MetadataCollector.AddMethods (IEnumerable`1 methods) <0x10f6e9880 + 0x000d2> in <filename unknown>:0
    20.  at Unity.IL2CPP.Metadata.MetadataCollector.<AddTypeInfos>m__2 (Mono.Cecil.TypeDefinition type) <0x10f6e9040 + 0x001f7> in <filename unknown>:0
    21.  at Unity.IL2CPP.Metadata.MetadataCollector.AddUnique[T] (System.Collections.Generic.Dictionary`2 items, Unity.IL2CPP.Metadata.T item, System.Action`1 onAdd) <0x10f6e5e10 + 0x000b9> in <filename unknown>:0
    22.  at Unity.IL2CPP.Metadata.MetadataCollector.AddUnique[T] (System.Collections.Generic.Dictionary`2 items, IEnumerable`1 itemsToAdd, System.Action`1 onAdd) <0x10f6e8730 + 0x000ad> in <filename unknown>:0
    23.  at Unity.IL2CPP.Metadata.MetadataCollector.AddTypeInfos (IEnumerable`1 types) <0x10f6e8620 + 0x000d2> in <filename unknown>:0
    24.  at Unity.IL2CPP.Metadata.MetadataCollector.<AddAssembly>m__0 (Mono.Cecil.ModuleDefinition module) <0x10f6e8550 + 0x00093> in <filename unknown>:0
    25.  at Unity.IL2CPP.Metadata.MetadataCollector.AddUnique[T] (System.Collections.Generic.Dictionary`2 items, Unity.IL2CPP.Metadata.T item, System.Action`1 onAdd) <0x10f6e5e10 + 0x000b9> in <filename unknown>:0
    26.  at Unity.IL2CPP.Metadata.MetadataCollector.AddAssembly (Mono.Cecil.AssemblyDefinition assemblyDefinition) <0x10f6e5bc0 + 0x001e0> in <filename unknown>:0
    27.  at Unity.IL2CPP.Metadata.MetadataCollector.AddAssemblies (ICollection`1 assemblies) <0x10f6e59d0 + 0x0007c> in <filename unknown>:0
    28.  at Unity.IL2CPP.AssemblyConverter.Apply () <0x10da40000 + 0x00221> in <filename unknown>:0
    29.  at Unity.IL2CPP.AssemblyConverter.ConvertAssemblies (NiceIO.NPath[] assemblies, NiceIO.NPath outputDir, NiceIO.NPath dataFolder) <0x10da32200 + 0x0007d> in <filename unknown>:0
    30. stderr:
    31.  
    32. Unhandled Exception:
    33. System.InvalidOperationException: Unable to resolve [UnityEngine]UnityEngine.AdditionalCanvasShaderChannels.
    34.  at Unity.IL2CPP.Common.WindowsRuntimeAwareMetadataResolver.Resolve (Mono.Cecil.TypeReference type) <0x10dad13a0 + 0x002c9> in <filename unknown>:0
    35.  at Mono.Cecil.ModuleDefinition.Resolve (Mono.Cecil.TypeReference type) <0x10dad1260 + 0x00034> in <filename unknown>:0
    36.  at Mono.Cecil.TypeReference.Resolve () <0x10dad11c0 + 0x0003b> in <filename unknown>:0
    37.  at Unity.IL2CPP.NamingComponent.GetWellKnownNameFor (Mono.Cecil.TypeReference typeReference) <0x10f6ee1f0 + 0x000b3> in <filename unknown>:0
    38.  at Unity.IL2CPP.NamingComponent.ForTypeNameInternal (Mono.Cecil.TypeReference typeReference) <0x10f6ee110 + 0x00029> in <filename unknown>:0
    39.  at Unity.IL2CPP.NamingComponent.ForTypeNameOnly (Mono.Cecil.TypeReference type) <0x10f6ee040 + 0x0005d> in <filename unknown>:0
    40.  at Unity.IL2CPP.NamingComponent.ForType (Mono.Cecil.TypeReference typeReference) <0x10f6edfe0 + 0x00035> in <filename unknown>:0
    41.  at Unity.IL2CPP.RuntimeInvokerCollectorComponent.NameForInvoker (Mono.Cecil.TypeReference[] data) <0x10f6ede10 + 0x00099> in <filename unknown>:0
    42.  at Unity.IL2CPP.RuntimeInvokerCollectorComponent.Add (Mono.Cecil.MethodReference method) <0x10f6ed290 + 0x0028d> in <filename unknown>:0
    43.  at Unity.IL2CPP.Metadata.MetadataCollector.<AddMethods>m__7 (Mono.Cecil.MethodDefinition method) <0x10f6ec1d0 + 0x0034c> in <filename unknown>:0
    44.  at Unity.IL2CPP.Metadata.MetadataCollector.AddUnique[T] (System.Collections.Generic.Dictionary`2 items, Unity.IL2CPP.Metadata.T item, System.Action`1 onAdd) <0x10f6e5e10 + 0x000b9> in <filename unknown>:0
    45.  at Unity.IL2CPP.Metadata.MetadataCollector.AddUnique[T] (System.Collections.Generic.Dictionary`2 items, IEnumerable`1 itemsToAdd, System.Action`1 onAdd) <0x10f6e8730 + 0x000ad> in <filename unknown>:0
    46.  at Unity.IL2CPP.Metadata.MetadataCollector.AddMethods (IEnumerable`1 methods) <0x10f6e9880 + 0x000d2> in <filename unknown>:0
    47.  at Unity.IL2CPP.Metadata.MetadataCollector.<AddTypeInfos>m__2 (Mono.Cecil.TypeDefinition type) <0x10f6e9040 + 0x001f7> in <filename unknown>:0
    48.  at Unity.IL2CPP.Metadata.MetadataCollector.AddUnique[T] (System.Collections.Generic.Dictionary`2 items, Unity.IL2CPP.Metadata.T item, System.Action`1 onAdd) <0x10f6e5e10 + 0x000b9> in <filename unknown>:0
    49.  at Unity.IL2CPP.Metadata.MetadataCollector.AddUnique[T] (System.Collections.Generic.Dictionary`2 items, IEnumerable`1 itemsToAdd, System.Action`1 onAdd) <0x10f6e8730 + 0x000ad> in <filename unknown>:0
    50.  at Unity.IL2CPP.Metadata.MetadataCollector.AddTypeInfos (IEnumerable`1 types) <0x10f6e8620 + 0x000d2> in <filename unknown>:0
    51.  at Unity.IL2CPP.Metadata.MetadataCollector.<AddAssembly>m__0 (Mono.Cecil.ModuleDefinition module) <0x10f6e8550 + 0x00093> in <filename unknown>:0
    52.  at Unity.IL2CPP.Metadata.MetadataCollector.AddUnique[T] (System.Collections.Generic.Dictionary`2 items, Unity.IL2CPP.Metadata.T item, System.Action`1 onAdd) <0x10f6e5e10 + 0x000b9> in <filename unknown>:0
    53.  at Unity.IL2CPP.Metadata.MetadataCollector.AddAssembly (Mono.Cecil.AssemblyDefinition assemblyDefinition) <0x10f6e5bc0 + 0x001e0> in <filename unknown>:0
    54.  at Unity.IL2CPP.Metadata.MetadataCollector.AddAssemblies (ICollection`1 assemblies) <0x10f6e59d0 + 0x0007c> in <filename unknown>:0
    55.  at Unity.IL2CPP.AssemblyConverter.Apply () <0x10da40000 + 0x00221> in <filename unknown>:0
    56.  at Unity.IL2CPP.AssemblyConverter.ConvertAssemblies (NiceIO.NPath[] assemblies, NiceIO.NPath outputDir, NiceIO.NPath dataFolder) <0x10da32200 + 0x0007d> in <filename unknown>:0
    57. [ERROR] FATAL UNHANDLED EXCEPTION: System.InvalidOperationException: Unable to resolve [UnityEngine]UnityEngine.AdditionalCanvasShaderChannels.
    58.  at Unity.IL2CPP.Common.WindowsRuntimeAwareMetadataResolver.Resolve (Mono.Cecil.TypeReference type) <0x10dad13a0 + 0x002c9> in <filename unknown>:0
    59.  at Mono.Cecil.ModuleDefinition.Resolve (Mono.Cecil.TypeReference type) <0x10dad1260 + 0x00034> in <filename unknown>:0
    60.  at Mono.Cecil.TypeReference.Resolve () <0x10dad11c0 + 0x0003b> in <filename unknown>:0
    61.  at Unity.IL2CPP.NamingComponent.GetWellKnownNameFor (Mono.Cecil.TypeReference typeReference) <0x10f6ee1f0 + 0x000b3> in <filename unknown>:0
    62.  at Unity.IL2CPP.NamingComponent.ForTypeNameInternal (Mono.Cecil.TypeReference typeReference) <0x10f6ee110 + 0x00029> in <filename unknown>:0
    63.  at Unity.IL2CPP.NamingComponent.ForTypeNameOnly (Mono.Cecil.TypeReference type) <0x10f6ee040 + 0x0005d> in <filename unknown>:0
    64.  at Unity.IL2CPP.NamingComponent.ForType (Mono.Cecil.TypeReference typeReference) <0x10f6edfe0 + 0x00035> in <filename unknown>:0
    65.  at Unity.IL2CPP.RuntimeInvokerCollectorComponent.NameForInvoker (Mono.Cecil.TypeReference[] data) <0x10f6ede10 + 0x00099> in <filename unknown>:0
    66.  at Unity.IL2CPP.RuntimeInvokerCollectorComponent.Add (Mono.Cecil.MethodReference method) <0x10f6ed290 + 0x0028d> in <filename unknown>:0
    67.  at Unity.IL2CPP.Metadata.MetadataCollector.<AddMethods>m__7 (Mono.Cecil.MethodDefinition method) <0x10f6ec1d0 + 0x0034c> in <filename unknown>:0
    68.  at Unity.IL2CPP.Metadata.MetadataCollector.AddUnique[T] (System.Collections.Generic.Dictionary`2 items, Unity.IL2CPP.Metadata.T item, System.Action`1 onAdd) <0x10f6e5e10 + 0x000b9> in <filename unknown>:0
    69.  at Unity.IL2CPP.Metadata.MetadataCollector.AddUnique[T] (System.Collections.Generic.Dictionary`2 items, IEnumerable`1 itemsToAdd, System.Action`1 onAdd) <0x10f6e8730 + 0x000ad> in <filename unknown>:0
    70.  at Unity.IL2CPP.Metadata.MetadataCollector.AddMethods (IEnumerable`1 methods) <0x10f6e9880 + 0x000d2> in <filename unknown>:0
    71.  at Unity.IL2CPP.Metadata.MetadataCollector.<AddTypeInfos>m__2 (Mono.Cecil.TypeDefinition type) <0x10f6e9040 + 0x001f7> in <filename unknown>:0
    72.  at Unity.IL2CPP.Metadata.MetadataCollector.AddUnique[T] (System.Collections.Generic.Dictionary`2 items, Unity.IL2CPP.Metadata.T item, System.Action`1 onAdd) <0x10f6e5e10 + 0x000b9> in <filename unknown>:0
    73.  at Unity.IL2CPP.Metadata.MetadataCollector.AddUnique[T] (System.Collections.Generic.Dictionary`2 items, IEnumerable`1 itemsToAdd, System.Action`1 onAdd) <0x10f6e8730 + 0x000ad> in <filename unknown>:0
    74.  at Unity.IL2CPP.Metadata.MetadataCollector.AddTypeInfos (IEnumerable`1 types) <0x10f6e8620 + 0x000d2> in <filename unknown>:0
    75.  at Unity.IL2CPP.Metadata.MetadataCollector.<AddAssembly>m__0 (Mono.Cecil.ModuleDefinition module) <0x10f6e8550 + 0x00093> in <filename unknown>:0
    76.  at Unity.IL2CPP.Metadata.MetadataCollector.AddUnique[T] (System.Collections.Generic.Dictionary`2 items, Unity.IL2CPP.Metadata.T item, System.Action`1 onAdd) <0x10f6e5e10 + 0x000b9> in <filename unknown>:0
    77.  at Unity.IL2CPP.Metadata.MetadataCollector.AddAssembly (Mono.Cecil.AssemblyDefinition assemblyDefinition) <0x10f6e5bc0 + 0x001e0> in <filename unknown>:0
    78.  at Unity.IL2CPP.Metadata.MetadataCollector.AddAssemblies (ICollection`1 assemblies) <0x10f6e59d0 + 0x0007c> in <filename unknown>:0
    79.  at Unity.IL2CPP.AssemblyConverter.Apply () <0x10da40000 + 0x00221> in <filename unknown>:0
    80.  at Unity.IL2CPP.AssemblyConverter.ConvertAssemblies (NiceIO.NPath[] assemblies, NiceIO.NPath outputDir, NiceIO.NPath dataFolder) <0x10da32200 + 0x0007d> in <filename unknown>:0
    81.  
    82. UnityEngine.Debug:LogError(Object)
    83. UnityEditorInternal.Runner:RunManagedProgram(String, String, String, CompilerOutputParserBase, Action`1) (at /Users/builduser/buildslave/unity/build/Editor/Mono/BuildPipeline/BuildUtils.cs:96)
    84. UnityEditorInternal.IL2CPPBuilder:RunIl2CppWithArguments(List`1, Action`1, String) (at /Users/builduser/buildslave/unity/build/Editor/Mono/BuildPipeline/Il2Cpp/IL2CPPUtils.cs:298)
    85. UnityEditorInternal.IL2CPPBuilder:ConvertPlayerDlltoCpp(ICollection`1, String, String) (at /Users/builduser/buildslave/unity/build/Editor/Mono/BuildPipeline/Il2Cpp/IL2CPPUtils.cs:289)
    86. UnityEditorInternal.IL2CPPBuilder:Run() (at /Users/builduser/buildslave/unity/build/Editor/Mono/BuildPipeline/Il2Cpp/IL2CPPUtils.cs:131)
    87. UnityEditorInternal.IL2CPPUtils:RunIl2Cpp(String, String, IIl2CppPlatformProvider, Action`1, RuntimeClassRegistry, Boolean) (at /Users/builduser/buildslave/unity/build/Editor/Mono/BuildPipeline/Il2Cpp/IL2CPPUtils.cs:32)
    88. UnityEditor.HostView:OnGUI()
    89.  
    Code (CSharp):
    1. Exception: /Applications/Unity/Unity.app/Contents/il2cpp/build/il2cpp.exe did not run properly!
    2. UnityEditorInternal.Runner.RunManagedProgram (System.String exe, System.String args, System.String workingDirectory, UnityEditor.Scripting.Compilers.CompilerOutputParserBase parser, System.Action`1 setupStartInfo) (at /Users/builduser/buildslave/unity/build/Editor/Mono/BuildPipeline/BuildUtils.cs:98)
    3. UnityEditorInternal.IL2CPPBuilder.RunIl2CppWithArguments (System.Collections.Generic.List`1 arguments, System.Action`1 setupStartInfo, System.String workingDirectory) (at /Users/builduser/buildslave/unity/build/Editor/Mono/BuildPipeline/Il2Cpp/IL2CPPUtils.cs:298)
    4. UnityEditorInternal.IL2CPPBuilder.ConvertPlayerDlltoCpp (ICollection`1 userAssemblies, System.String outputDirectory, System.String workingDirectory) (at /Users/builduser/buildslave/unity/build/Editor/Mono/BuildPipeline/Il2Cpp/IL2CPPUtils.cs:289)
    5. UnityEditorInternal.IL2CPPBuilder.Run () (at /Users/builduser/buildslave/unity/build/Editor/Mono/BuildPipeline/Il2Cpp/IL2CPPUtils.cs:131)
    6. UnityEditorInternal.IL2CPPUtils.RunIl2Cpp (System.String tempFolder, System.String stagingAreaData, IIl2CppPlatformProvider platformProvider, System.Action`1 modifyOutputBeforeCompile, UnityEditor.RuntimeClassRegistry runtimeClassRegistry, Boolean debugBuild) (at /Users/builduser/buildslave/unity/build/Editor/Mono/BuildPipeline/Il2Cpp/IL2CPPUtils.cs:32)
    7. UnityEditor.iOS.PostProcessiPhonePlayer.CrossCompileManagedDlls (BuildSettings bs, UnityEditor.iOS.ProjectPaths paths, UnityEditor.AssemblyReferenceChecker checker, UnityEditor.RuntimeClassRegistry usedClassRegistry) (at /Users/builduser/buildslave/unity/build/PlatformDependent/iPhonePlayer/Extensions/Common/BuildPostProcessor.cs:675)
    8. UnityEditor.iOS.PostProcessiPhonePlayer.PostProcess (BuildSettings bs, UnityEditor.iOS.ProjectPaths paths, UnityEditor.RuntimeClassRegistry usedClassRegistry) (at /Users/builduser/buildslave/unity/build/PlatformDependent/iPhonePlayer/Extensions/Common/BuildPostProcessor.cs:518)
    9. UnityEditor.iOS.PostProcessiPhonePlayer.PostProcess (PostProcessorSettings postProcessorSettings, BuildPostProcessArgs args) (at /Users/builduser/buildslave/unity/build/PlatformDependent/iPhonePlayer/Extensions/Common/BuildPostProcessor.cs:489)
    10. UnityEditor.iOS.iOSBuildPostprocessor.PostProcess (BuildPostProcessArgs args) (at /Users/builduser/buildslave/unity/build/PlatformDependent/iPhonePlayer/Extensions/Common/ExtensionModule.cs:34)
    11. UnityEditor.PostprocessBuildPlayer.Postprocess (BuildTarget target, System.String installPath, System.String companyName, System.String productName, Int32 width, Int32 height, System.String downloadWebplayerUrl, System.String manualDownloadWebplayerUrl, BuildOptions options, UnityEditor.RuntimeClassRegistry usedClassRegistry, UnityEditor.BuildReporting.BuildReport report) (at /Users/builduser/buildslave/unity/build/Editor/Mono/BuildPipeline/PostprocessBuildPlayer.cs:186)
    12. UnityEditor.HostView:OnGUI()
     
  2. JoshPeterson

    JoshPeterson

    Unity Technologies

    Joined:
    Jul 21, 2014
    Posts:
    6,920
    Can you submit a bug report for this issue? Initially, it looks like something in the API updater might have missed a breaking API change (although that also seems unlikely for a patch release). I'd like to take a closer look at this issue.