Search Unity

Can't build for WebGL on latest Unity 2020 available

Discussion in 'Web' 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).