Search Unity

  1. Welcome to the Unity Forums! Please take the time to read our Code of Conduct to familiarize yourself with the forum rules and how to post constructively.
  2. We have updated the language to the Editor Terms based on feedback from our employees and community. Learn more.
    Dismiss Notice
  3. Join us on November 16th, 2023, between 1 pm and 9 pm CET for Ask the Experts Online on Discord and on Unity Discussions.
    Dismiss Notice

Can't build for WebGL on latest Unity 2020 available

Discussion in 'WebGL' started by Tarrag, Jan 24, 2020.

  1. Tarrag

    Tarrag

    Joined:
    Nov 7, 2016
    Posts:
    215
    Hi,

    I fail to build a fresh new project for Unity 2020.1.0a20.2541, URP, WebGL platform. It plays fine on Editor. I'm on Win10. Error:

    Code (CSharp):
    1. Files\Unity\Hub\Editor\2020.1.0a20\Editor\Data\il2cpp\build/deploy/net471/UnityLinker.exe did not run properly!
    Googling it, I tried disabled compression, both Project settings->Player->API compatibility at .NET2x and 4x, unticking strip engine code, delete project and library folder and re-build, delete link.xml, my system is set to region format English(United States), none to any avail.

    Also, Files\Unity\Hub\Editor\2020.1.0a20\Editor\Data\il2cpp\build/deploy/net471/UnityLinker.exe --help seems to report correctly linkerhelp.png

    Full error code:
    Code (CSharp):
    1. Failed running C:\Program Files\Unity\Hub\Editor\2020.1.0a20\Editor\Data\il2cpp\build/deploy/net471/UnityLinker.exe -out=B:/[path]/Temp/StagingArea/Data/Managed/tempStrip -x="C:/Users/username/AppData/Local/Temp/tmp1942393e.tmp" -x=B:/[path]/Temp/StagingArea/Data/Managed/TypesInScenes.xml -d=B:/[path]/Temp/StagingArea/Data/Managed --include-unity-root-assembly=B:/[path]/Temp/StagingArea/Data/Managed/Assembly-CSharp.dll --include-unity-root-assembly=B:/[path]/Temp/StagingArea/Data/Managed/Unity.RenderPipelines.Core.Runtime.dll --include-unity-root-assembly=B:/[path]/Temp/StagingArea/Data/Managed/Unity.RenderPipelines.Universal.Runtime.dll --include-unity-root-assembly=B:/[path]/Temp/StagingArea/Data/Managed/UnityEngine.UI.dll --dotnetruntime=il2cpp --dotnetprofile=unityaot --use-editor-options --include-directory=B:/[path]/Temp/StagingArea/Data/Managed --rule-set=Conservative --editor-data-file=B:/[path]/Temp/StagingArea/Data/Managed/EditorToUnityLinkerData.json --platform=WebGL --enable-engine-module-stripping --engine-modules-asset-file="C:/Program Files/Unity/Hub/Editor/2020.1.0a20/Editor/Data/PlaybackEngines/WebGLSupport/Whitelists/../modules.asset"
    2. stdout:
    3. Fatal error in Unity CIL Linker
    4. Mono.Linker.MarkException: Error processing method: 'System.Void UnityEngine.Rendering.ObjectParameter`1::set_value(T)' in assembly: 'Unity.RenderPipelines.Core.Runtime.dll' ---> System.NullReferenceException: Object reference not set to an instance of an object.
    5.    at Unity.Linker.Steps.Marking.ReflectionMarking.<>c.<ProcessGetFields>b__16_0(TypeDefinition t)
    6.    at Unity.Linker.Steps.Marking.ReflectionMarking.ProcessGetMemberCollection[T](ReflectionUsageContext reflectionContext, DetailedStackItem stackItem, Func`2 getMembers, Func`2 isPublic, Action`1 markMember, Boolean includeBaseTypes)
    7.    at Unity.Linker.Steps.Marking.ReflectionMarking.ProcessGetFields(ReflectionUsageContext reflectionContext, DetailedStackItem stackItem)
    8.    at Unity.Linker.Steps.Marking.ReflectionMarking.MarkThingsUsedViaReflection(MethodBody body)
    9.    at Unity.Linker.Steps.UnityMarkStep.MarkReflectionLikeDependencies(MethodBody body)
    10.    at Mono.Linker.Steps.MarkStep.MarkMethodBody(MethodBody body)
    11.    at Unity.Linker.Steps.UnityMarkStep.MarkMethodBody(MethodBody body)
    12.    at Mono.Linker.Steps.MarkStep.ProcessMethod(MethodDefinition method)
    13.    at Unity.Linker.Steps.UnityMarkStep.ProcessMethod(MethodDefinition method)
    14.    at Mono.Linker.Steps.MarkStep.ProcessQueue()
    15.    --- End of inner exception stack trace ---
    16.    at Mono.Linker.Steps.MarkStep.ProcessQueue()
    17.    at Mono.Linker.Steps.MarkStep.ProcessPrimaryQueue()
    18.    at Mono.Linker.Steps.MarkStep.Process()
    19.    at Mono.Linker.Steps.MarkStep.Process(LinkContext context)
    20.    at Unity.Linker.Steps.UnityMarkStep.Process(LinkContext context)
    21.    at Mono.Linker.Pipeline.ProcessStep(LinkContext context, IStep step)
    22.    at Unity.Linker.UnityPipeline.ProcessStep(LinkContext context, IStep step)
    23.    at Mono.Linker.Pipeline.Process(LinkContext context)
    24.    at Unity.Linker.UnityDriver.Run()
    25.    at Unity.Linker.UnityDriver.RunDriverWithoutErrorHandling()
    26.    at Unity.Linker.UnityDriver.RunDriver()
    27. stderr:
    28. UnityEngine.Debug:LogError(Object)
    29. UnityEditorInternal.Runner:RunProgram(Program, String, String, String, CompilerOutputParserBase)
    30. UnityEditorInternal.Runner:RunManagedProgram(String, String, String, CompilerOutputParserBase, Action`1)
    31. UnityEditorInternal.AssemblyStripper:RunAssemblyLinker(IEnumerable`1, String&, String&, String, String)
    32. UnityEditorInternal.AssemblyStripper:StripAssembliesTo(String, String&, String&, IEnumerable`1, UnityLinkerRunInformation)
    33. UnityEditorInternal.AssemblyStripper:RunAssemblyStripper(UnityLinkerRunInformation)
    34. UnityEditorInternal.AssemblyStripper:StripAssemblies(String, BaseUnityLinkerPlatformProvider, IIl2CppPlatformProvider, RuntimeClassRegistry, ManagedStrippingLevel)
    35. UnityEditorInternal.IL2CPPBuilder:Run()
    36. UnityEditorInternal.IL2CPPUtils:RunIl2Cpp(String, IIl2CppPlatformProvider, Action`1, RuntimeClassRegistry)
    37. UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)
    38.  
    39. Exception: C:\Program Files\Unity\Hub\Editor\2020.1.0a20\Editor\Data\il2cpp\build/deploy/net471/UnityLinker.exe did not run properly!
    40. UnityEditorInternal.Runner.RunProgram (UnityEditor.Utils.Program p, System.String exe, System.String args, System.String workingDirectory, UnityEditor.Scripting.Compilers.CompilerOutputParserBase parser) (at <bba5ae680bc14113ade3be5cc43cbed6>:0)
    41. UnityEditorInternal.Runner.RunManagedProgram (System.String exe, System.String args, System.String workingDirectory, UnityEditor.Scripting.Compilers.CompilerOutputParserBase parser, System.Action`1[T] setupStartInfo) (at <bba5ae680bc14113ade3be5cc43cbed6>:0)
    42. UnityEditorInternal.AssemblyStripper.RunAssemblyLinker (System.Collections.Generic.IEnumerable`1[T] args, System.String& out, System.String& err, System.String linkerPath, System.String workingDirectory) (at <bba5ae680bc14113ade3be5cc43cbed6>:0)
    43. UnityEditorInternal.AssemblyStripper.StripAssembliesTo (System.String outputFolder, System.String& output, System.String& error, System.Collections.Generic.IEnumerable`1[T] linkXmlFiles, UnityEditorInternal.UnityLinkerRunInformation runInformation) (at <bba5ae680bc14113ade3be5cc43cbed6>:0)
    44. UnityEditorInternal.AssemblyStripper.RunAssemblyStripper (UnityEditorInternal.UnityLinkerRunInformation runInformation) (at <bba5ae680bc14113ade3be5cc43cbed6>:0)
    45. UnityEditorInternal.AssemblyStripper.StripAssemblies (System.String managedAssemblyFolderPath, UnityEditorInternal.BaseUnityLinkerPlatformProvider unityLinkerPlatformProvider, UnityEditorInternal.IIl2CppPlatformProvider il2cppPlatformProvider, UnityEditor.RuntimeClassRegistry rcr, UnityEditor.ManagedStrippingLevel managedStrippingLevel) (at <bba5ae680bc14113ade3be5cc43cbed6>:0)
    46. UnityEditorInternal.IL2CPPBuilder.Run () (at <bba5ae680bc14113ade3be5cc43cbed6>:0)
    47. UnityEditorInternal.IL2CPPUtils.RunIl2Cpp (System.String stagingAreaData, UnityEditorInternal.IIl2CppPlatformProvider platformProvider, System.Action`1[T] modifyOutputBeforeCompile, UnityEditor.RuntimeClassRegistry runtimeClassRegistry) (at <bba5ae680bc14113ade3be5cc43cbed6>:0)
    48. UnityEditor.WebGL.WebGlBuildPostprocessor.CompileBuild (UnityEditor.Modules.BuildPostProcessArgs args) (at /Users/builduser/buildslave/unity/build/PlatformDependent/WebGL/Extensions/Unity.WebGL.extensions/BuildPostprocessor.cs:373)
    49. UnityEditor.WebGL.WebGlBuildPostprocessor.PostProcess (UnityEditor.Modules.BuildPostProcessArgs args) (at /Users/builduser/buildslave/unity/build/PlatformDependent/WebGL/Extensions/Unity.WebGL.extensions/BuildPostprocessor.cs:911)
    50. UnityEditor.Modules.DefaultBuildPostprocessor.PostProcess (UnityEditor.Modules.BuildPostProcessArgs args, UnityEditor.BuildProperties& outProperties) (at <bba5ae680bc14113ade3be5cc43cbed6>:0)
    51. UnityEditor.PostprocessBuildPlayer.Postprocess (UnityEditor.BuildTargetGroup targetGroup, UnityEditor.BuildTarget target, System.String installPath, System.String companyName, System.String productName, System.Int32 width, System.Int32 height, UnityEditor.BuildOptions options, UnityEditor.RuntimeClassRegistry usedClassRegistry, UnityEditor.Build.Reporting.BuildReport report) (at <bba5ae680bc14113ade3be5cc43cbed6>:0)
    52. UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)
    53.  
    54. UnityEditor.BuildPlayerWindow+BuildMethodException: 3 errors
    55.   at UnityEditor.BuildPlayerWindow+DefaultBuildMethods.BuildPlayer (UnityEditor.BuildPlayerOptions options) [0x0027c] in <bba5ae680bc14113ade3be5cc43cbed6>:0
    56.   at UnityEditor.BuildPlayerWindow.CallBuildMethods (System.Boolean askForBuildLocation, UnityEditor.BuildOptions defaultBuildOptions) [0x00080] in <bba5ae680bc14113ade3be5cc43cbed6>:0
    57. UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)
    58.  
    59.  
    Anyone encountered this and found a solution? I raised bug rpt

    Thanks a bunch for your help
     
    Last edited: Jan 24, 2020
  2. Rich0

    Rich0

    Joined:
    Aug 9, 2013
    Posts:
    50
    I'm seeing exactly the same linker error when trying to build for iOS in the same version of Unity (using URP).