Closed schealex closed 2 years ago
I would be very surprised if that project suddenly stopped working. Could you please give as many details as possible so we can narrow it down a bit further? (i.e. unity version, runner (custom) specs, any changes to the build script or ci, or other relevant details you can think of)
In the meantime; @GabLeRoux do you know of any reason why this would break?
It is strange indeed. I have daily builds enabled for the project and I’m not reproducing this for webgl.
In fact, the only failing build I have right now is for iOS and here’s related issue: https://gitlab.com/gableroux/unity3d-gitlab-ci-example/-/issues/173
Here’s the pipeline that ran an hour ago and webgl is fine there:
https://gitlab.com/gableroux/unity3d-gitlab-ci-example/-/pipelines/462633874
So I’m not sure what could be causing this at all.
I see some messages related to cache, maybe try clearing the project’s cache and run the pipelines again? I’ll do the same on my side and see what happens.
edit: here’s the new pipeline running with fresh cache:
https://gitlab.com/gableroux/unity3d-gitlab-ci-example/-/pipelines/462758217
Thanks for the quick responses guys, will try the run with disabled cache. Maybe it's because i ran a custom project before trying the example in the same repo. brb
Got it guys it was indeed the cache. With the cache disabled it works now. Appreciate the quick support. Keep it up guys :)
Yeah, cache contains the whole Library
folder so reusing an existing one that comes from a different project will most likely lead to weird errors so I assume this is what happened to you ;)
Here's a different way to see it:
Library
folderLibrary
folder in a different project with a newer unity versionThings will go wrong 😅 Deleting the Library folder lets Unity generate a new working one 👍
Glad it worked 🙌
I think the same problem can sometimes happen when upgrading the unity version. Clearing cache is a good workaround. We could also add a key to the cache that is based on unity's version, but it's probably better to just have a clear understanding of what's going on so one can know when to clear cache.
@GabLeRoux I'm getting a different issue for my WebGL builds except the problem won't fix after a cache clean...
/opt/unity/Editor/Data/il2cpp/build/BeeSettings/offline/bee.exe exited after 153955 ms.
Exception: Unity.IL2CPP.Building.BuilderFailedException: /usr/bin/python2 -E "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/Emscripten/emcc" -o "/builds/3a/monopoly/Monopoly/Library/il2cpp_cache/linkresult_28C118B16BE42210765FEDD4A29B9476/build.bc" -s TOTAL_MEMORY=384MB -s DISABLE_EXCEPTION_CATCHING=0 -s WASM=0 -O3 "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_AIModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_AccessibilityModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_AndroidJNIModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_AnimationModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_AssetBundleModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_AudioModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_ClothModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_CoreModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_CrashReportingModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_DSPGraphModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_DirectorModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_GIModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_GameCenterModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_GridModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_HotReloadModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_IMGUIModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_ImageConversionModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_InputLegacyModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_InputModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_JSONSerializeModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_LocalizationModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_ParticleSystemModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_PerformanceReportingModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_Physics2DModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_PhysicsModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_ProfilerModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_RuntimeInitializeOnLoadManagerInitializerModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_ScreenCaptureModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_SharedInternalsModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_SpriteMaskModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_SpriteShapeModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_StreamingModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_SubstanceModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_SubsystemsModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_TLSModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_TerrainModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_TerrainPhysicsModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_TextCoreModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_TextRenderingModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_TilemapModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_UIElementsModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_UIElementsNativeModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_UIModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_UNETModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_UmbraModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_UnityAnalyticsModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_UnityConnectModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_UnityCurlModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_UnityTestProtocolModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_UnityWebRequestAssetBundleModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_UnityWebRequestAudioModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_UnityWebRequestModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_UnityWebRequestTextureModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_UnityWebRequestWWWModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_VFXModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_VRModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_VehiclesModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_VideoModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_WebGLModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_WindModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/lib/modules/WebGLSupport_XRModule_Dynamic.bc" "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/Variations/nondevelopment/baselib.bc" @"/tmp/_1158443285/response.rsp"
terminate called after throwing an instance of 'std::bad_alloc'
what(): std::bad_alloc
/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/Emscripten_FastComp_Linux/llvm-link[0x57658a]
/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/Emscripten_FastComp_Linux/llvm-link[0x57486e]
/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/Emscripten_FastComp_Linux/llvm-link[0x5749aa]
/lib/x86_64-linux-gnu/libpthread.so.0(+0x12980)[0x7fe838ad5980]
/lib/x86_64-linux-gnu/libc.so.6(gsignal+0xc7)[0x7fe837ba7fb7]
/lib/x86_64-linux-gnu/libc.so.6(abort+0x141)[0x7fe837ba9921]
/usr/lib/x86_64-linux-gnu/libstdc++.so.6(+0x8c957)[0x7fe83859c957]
/usr/lib/x86_64-linux-gnu/libstdc++.so.6(+0x92ae6)[0x7fe8385a2ae6]
/usr/lib/x86_64-linux-gnu/libstdc++.so.6(+0x92b21)[0x7fe8385a2b21]
/usr/lib/x86_64-linux-gnu/libstdc++.so.6(+0x92d54)[0x7fe8385a2d54]
/usr/lib/x86_64-linux-gnu/libstdc++.so.6(+0x932dc)[0x7fe8385a32dc]
/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/Emscripten_FastComp_Linux/llvm-link[0x471995]
/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/Emscripten_FastComp_Linux/llvm-link[0x471c19]
/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/Emscripten_FastComp_Linux/llvm-link[0x476b86]
/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/Emscripten_FastComp_Linux/llvm-link[0x45ef83]
/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/Emscripten_FastComp_Linux/llvm-link[0x467d65]
/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/Emscripten_FastComp_Linux/llvm-link[0x46b954]
/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/Emscripten_FastComp_Linux/llvm-link[0x40a572]
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xe7)[0x7fe837b8abf7]
/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/Emscripten_FastComp_Linux/llvm-link[0x416a99]
Stack dump:
0. Program arguments: /opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/Emscripten_FastComp_Linux/llvm-link @/tmp/tmppVQhaD.response -o /builds/3a/monopoly/Monopoly/Library/il2cpp_cache/linkresult_28C118B16BE42210765FEDD4A29B9476/build.bc
Traceback (most recent call last):
File "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/Emscripten/emcc.py", line 3063, in <module>
sys.exit(run())
File "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/Emscripten/emcc.py", line 1607, in run
shared.Building.link(linker_inputs, specified_target)
File "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/Emscripten/tools/shared.py", line 2114, in link
output = run_process([LLVM_LINK] + link_args + ['-o', target], stdout=PIPE).stdout
File "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/Emscripten/tools/shared.py", line 167, in run_process
return run_base(cmd, universal_newlines=universal_newlines, check=check, *args, **kw)
File "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/Emscripten/tools/shared.py", line 162, in run_base
result.check_returncode()
File "/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/Emscripten/tools/shared.py", line 148, in check_returncode
raise Py2CalledProcessError(returncode=self.returncode, cmd=self.args, output=self.stdout, stderr=self.stderr)
tools.shared.Py2CalledProcessError: Command '['/opt/unity/Editor/Data/PlaybackEngines/WebGLSupport/BuildTools/Emscripten_FastComp_Linux/llvm-link', '@/tmp/tmppVQhaD.response', '-o', '/builds/3a/monopoly/Monopoly/Library/il2cpp_cache/linkresult_28C118B16BE42210765FEDD4A29B9476/build.bc']' returned non-zero exit status -6
at Unity.IL2CPP.Building.CppProgramBuilder.PostprocessObjectFiles(HashSet`1 objectFiles, CppToolChainContext toolChainContext) in /Users/bokken/build/output/unity/il2cpp/Unity.IL2CPP.Building/CppProgramBuilder.cs:line 363
at Unity.IL2CPP.Building.CppProgramBuilder.Build(IBuildStatistics& statistics) in /Users/bokken/build/output/unity/il2cpp/Unity.IL2CPP.Building/CppProgramBuilder.cs:line 160
at il2cpp.Compilation.CompilationDriver.Run(RuntimePlatform platform, BuildingOptions buildingOptions, ReadOnlyCollection`1 matchedAssemblyMethodSourceFiles) in /Users/bokken/build/output/unity/il2cpp/il2cpp/Compilation/CompilationDriver.cs:line 67
at il2cpp.Program.DoRun(String[] args, RuntimePlatform platform, BuildingOptions buildingOptions, Boolean throwExceptions) in /Users/bokken/build/output/unity/il2cpp/il2cpp/Program.cs:line 74
at UnityEditorInternal.Runner.RunProgram (UnityEditor.Utils.Program p, System.String exe, System.String args, System.String workingDirectory, UnityEditor.Scripting.Compilers.CompilerOutputParserBase parser) [0x0014f] in /home/bokken/buildslave/unity/build/Editor/Mono/BuildPipeline/BuildUtils.cs:129
at UnityEditorInternal.Runner.RunManagedProgram (System.String exe, System.String args, System.String workingDirectory, UnityEditor.Scripting.Compilers.CompilerOutputParserBase parser, System.Action`1[T] setupStartInfo) [0x00060] in /home/bokken/buildslave/unity/build/Editor/Mono/BuildPipeline/BuildUtils.cs:65
at UnityEditorInternal.IL2CPPBuilder.RunIl2CppWithArguments (System.Collections.Generic.List`1[T] arguments, System.Action`1[T] setupStartInfo) [0x000fe] in /home/bokken/buildslave/unity/build/Editor/Mono/BuildPipeline/Il2Cpp/IL2CPPUtils.cs:818
at UnityEditorInternal.IL2CPPBuilder.ConvertPlayerDlltoCpp (UnityEditor.Il2Cpp.Il2CppBuildPipelineData data) [0x003c1] in /home/bokken/buildslave/unity/build/Editor/Mono/BuildPipeline/Il2Cpp/IL2CPPUtils.cs:785
at UnityEditorInternal.IL2CPPBuilder.Run () [0x000f4] in /home/bokken/buildslave/unity/build/Editor/Mono/BuildPipeline/Il2Cpp/IL2CPPUtils.cs:604
at UnityEditorInternal.IL2CPPUtils.RunIl2Cpp (System.String stagingAreaData, UnityEditorInternal.IIl2CppPlatformProvider platformProvider, System.Action`1[T] modifyOutputBeforeCompile, UnityEditor.RuntimeClassRegistry runtimeClassRegistry) [0x0001c] in /home/bokken/buildslave/unity/build/Editor/Mono/BuildPipeline/Il2Cpp/IL2CPPUtils.cs:276
at UnityEditor.WebGL.WebGlBuildPostprocessor.CompileBuild (UnityEditor.Modules.BuildPostProcessArgs args) [0x00108] in /Users/bokken/buildslave/unity/build/PlatformDependent/WebGL/Extensions/Unity.WebGL.extensions/BuildPostprocessor.cs:365
at UnityEditor.WebGL.WebGlBuildPostprocessor.PostProcess (UnityEditor.Modules.BuildPostProcessArgs args) [0x002cb] in /Users/bokken/buildslave/unity/build/PlatformDependent/WebGL/Extensions/Unity.WebGL.extensions/BuildPostprocessor.cs:913
at UnityEditor.Modules.DefaultBuildPostprocessor.PostProcess (UnityEditor.Modules.BuildPostProcessArgs args, UnityEditor.BuildProperties& outProperties) [0x00001] in /home/bokken/buildslave/unity/build/Editor/Mono/Modules/DefaultBuildPostprocessor.cs:29
at 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) [0x000dc] in /home/bokken/buildslave/unity/build/Editor/Mono/BuildPipeline/PostprocessBuildPlayer.cs:337
UnityEditor.BuildPipeline:BuildPlayerInternalNoCheck(String[], String, String, BuildTargetGroup, BuildTarget, BuildOptions, String[], Boolean)
UnityEditor.BuildPipeline:BuildPlayerInternal(String[], String, String, BuildTargetGroup, BuildTarget, BuildOptions, String[]) (at /home/bokken/buildslave/unity/build/Editor/Mono/BuildPipeline.bindings.cs:422)
UnityEditor.BuildPipeline:BuildPlayer(String[], String, String, BuildTargetGroup, BuildTarget, BuildOptions, String[]) (at /home/bokken/buildslave/unity/build/Editor/Mono/BuildPipeline.bindings.cs:321)
UnityEditor.BuildPipeline:BuildPlayer(BuildPlayerOptions) (at /home/bokken/buildslave/unity/build/Editor/Mono/BuildPipeline.bindings.cs:295)
UnityEditor.BuildPipeline:BuildPlayer(String[], String, BuildTarget, BuildOptions) (at /home/bokken/buildslave/unity/build/Editor/Mono/BuildPipeline.bindings.cs:290)
BuildCommand:PerformBuild() (at Assets/Scripts/Editor/BuildCommand.cs:187)
(Filename: /home/bokken/buildslave/unity/build/Editor/Mono/BuildPipeline/BuildUtils.cs Line: 129)
I modified the .gitlab-ci.yml
rules to separate the cache for each job with $CI_JOB_NAME
but the problem still occurs.
Note: I'm using the base project but the Unity bits and pieces like the Assets folder are in a subfolder Monopoly
.
I'm not sure I'll be able to help you on this one. bad alloc sounds quite generic. Have you tried different compression options in your webgl build settings?
I remember older issues that were about compression, but it might not be your case at all.
Maybe a package you're using or an asset is causing this too. Try removing stuff to get a webgl build working, then add assets and packages until you find what's causing this. 🤷
I think the problem may have been related to the memory usage. I've added a 4GB swap file (it's a VM) and now the builds go through without any issue, cache included. Thanks for the advice anyway. @GabLeRoux
Bug description
WebGL unable to build.
How to reproduce
Expected behavior
Additional details