HTML5 Build Failures

Hey Everyone,

I have been experimenting with deploying some of my games to HTML 5 to display on my website. I quickly ran into build failures each time I had a third-party plug-in enabled.

Here is the failure with Low Entry’s Json and HTTP plug-ins. ( I have been in contact with him and he suggests that it is a problem with the engine’s implementation of Emscripten):

UATHelper: Packaging (HTML5): Running AutomationTool...
UATHelper: Packaging (HTML5): Automation.ParseCommandLine: Parsing command line: -ScriptsForProject=H:/PROJECTS/ProjectName/GameName/GameName.uproject BuildCookRun -nocompile -nocompileeditor -installed -nop4 -project=H:/PROJECTS/ProjectName/GameName/GameName.uproject -
UATHelper: Packaging (HTML5): cook -stage -archive -archivedirectory=H:/PROJECTS/ProjectName -package -clientconfig=Shipping -ue4exe=UE4Editor-Cmd.exe -clean -prereqs -distribution -nodebuginfo -targetplatform=HTML5 -build -CrashReporter -utf8output
UATHelper: Packaging (HTML5): Automation.Process: Setting up command environment.
UATHelper: Packaging (HTML5): BuildCookRun.SetupParams: Setting up ProjectParams for H:\PROJECTS\ProjectName\GameName\GameName.uproject
UATHelper: Packaging (HTML5): Project.Build: ********** BUILD COMMAND STARTED **********
UATHelper: Packaging (HTML5): CommandUtils.Run: Run: C:\Program Files\Epic Games\4.13\Engine\Binaries\DotNET\UnrealBuildTool.exe GameName HTML5 Shipping -Project=H:\PROJECTS\ProjectName\GameName\GameName.uproject -clean H:\PROJECTS\ProjectName\GameName\GameName.uproject  -remoteini="H:\PROJECTS\ProjectName\GameName" -nobuilduht -NoHot
Reload
UATHelper: Packaging (HTML5): CommandUtils.Run: Run: Took 1.1559386s to run UnrealBuildTool.exe, ExitCode=0
UATHelper: Packaging (HTML5): CommandUtils.Run: Run: C:\Program Files\Epic Games\4.13\Engine\Binaries\DotNET\UnrealBuildTool.exe GameName HTML5 Shipping -Project=H:\PROJECTS\ProjectName\GameName\GameName.uproject  H:\PROJECTS\ProjectName\GameName\GameName.uproject 
UATHelper: Packaging (HTML5):  -remoteini="H:\PROJECTS\ProjectName\GameName" -noxge -generatemanifest -NoHotReload -ignorejunk
UATHelper: Packaging (HTML5): CommandUtils.Run: Run: Took 1.1219076s to run UnrealBuildTool.exe, ExitCode=0
UATHelper: Packaging (HTML5): CommandUtils.Run: Run: C:\Program Files\Epic Games\4.13\Engine\Binaries\DotNET\UnrealBuildTool.exe GameName HTML5 Shipping -Project=H:\PROJECTS\ProjectName\GameName\GameName.uproject  H:\PROJECTS\ProjectName\GameName\GameName.uproject  -remoteini="H:\PROJECTS\ProjectName\GameName" -noxge -NoHotReload -ign
orejunk
UATHelper: Packaging (HTML5): UnrealBuildTool: Creating makefile for GameName (no existing makefile)
UATHelper: Packaging (HTML5): UnrealBuildTool: Performing full C++ include scan (no include cache file)
UATHelper: Packaging (HTML5): UnrealBuildTool: Setting Emscripten SDK 
UATHelper: Packaging (HTML5): UnrealBuildTool: Performing 2 actions (9 in parallel)
UATHelper: Packaging (HTML5): UnrealBuildTool: [1/2] python.exe UELinkerFixups.cpp
UATHelper: Packaging (HTML5): UnrealBuildTool: [2/2] python.exe GameName-HTML5-Shipping.js
UATHelper: Packaging (HTML5): UnrealBuildTool: INFO:root:(Emscripten: Running sanity checks)
UATHelper: Packaging (HTML5): UnrealBuildTool: INFO:root:Closure compiler (C:\Program Files\Epic Games\4.13\Engine\Extras\ThirdPartyNotUE\emsdk\emscripten\1.35.0\third_party\closure-compiler\compiler.jar) does not exist, check the paths in C:\Program Files\Epic Games\4.13\Engine\Interm
UATHelper: Packaging (HTML5): ediate\Build\HTML5\.emscripten
UATHelper: Packaging (HTML5): UnrealBuildTool: INFO:root:closure compiler will not be available
UATHelper: Packaging (HTML5): UnrealBuildTool: error: Linking globals named '_Z14UELinkerFixupsv': symbol multiply defined!
UATHelper: Packaging (HTML5): UnrealBuildTool: Traceback (most recent call last):
UATHelper: Packaging (HTML5): UnrealBuildTool:   File "C:\Program Files\Epic Games\4.13\Engine\Extras\ThirdPartyNotUE\emsdk\emscripten\1.35.0\emcc", line 1309, in <module>
UATHelper: Packaging (HTML5): UnrealBuildTool:     final = shared.Building.llvm_opt(final, link_opts, DEFAULT_FINAL)
UATHelper: Packaging (HTML5): UnrealBuildTool:   File "C:\Program Files\Epic Games\4.13\Engine\Extras\ThirdPartyNotUE\emsdk\emscripten\1.35.0\tools\shared.py", line 1465, in llvm_opt
UATHelper: Packaging (HTML5): UnrealBuildTool:     assert os.path.exists(target), 'Failed to run llvm optimizations: ' + output
UATHelper: Packaging (HTML5): UnrealBuildTool: AssertionError: Failed to run llvm optimizations: 
UATHelper: Packaging (HTML5): UnrealBuildTool: ERROR: UBT ERROR: Failed to produce item: H:\PROJECTS\BlindsCom\BlindsComGame\Binaries\HTML5\GameName-HTML5-Shipping.js
UATHelper: Packaging (HTML5): UnrealBuildTool: Total build time: 52.70 seconds
UATHelper: Packaging (HTML5): CommandUtils.Run: Run: Took 52.8593486s to run UnrealBuildTool.exe, ExitCode=5
UATHelper: Packaging (HTML5): Program.Main: ERROR: AutomationTool terminated with exception: AutomationTool.CommandUtils+CommandFailedException: Command failed (Result:5): C:\Program Files\Epic Games\4.13\Engine\Binaries\DotNET\UnrealBuildTool.exe GameName HTML5 Shipping -Project=H:\PROJECTS\ProjectName\GameName\GameName.uproject  H:\PROJECTS\ProjectName\GameName\GameName.uproject  -remoteini="H:\PROJECTS\ProjectName\GameName" -noxge -NoHotReload -ignorejunk. See logfile for details: 'UnrealBuildTool-2016.12.01-16.43.56.txt' 
UATHelper: Packaging (HTML5):    at AutomationTool.CommandUtils.RunAndLog(String App, String CommandLine, String Logfile, Int32 MaxSuccessCode, String Input, ERunOptions Options, Dictionary`2 EnvVars, SpewFilterCallbackType SpewFilterCallback)
UATHelper: Packaging (HTML5):    at AutomationTool.CommandUtils.RunAndLog(CommandEnvironment Env, String App, String CommandLine, String LogName, Int32 MaxSuccessCode, String Input, ERunOptions Options, Dictionary`2 EnvVars, SpewFilterCallbackType SpewFilterCallback)
UATHelper: Packaging (HTML5):    at AutomationTool.CommandUtils.RunUBT(CommandEnvironment Env, String UBTExecutable, String CommandLine, String LogName, Dictionary`2 EnvVars)
UATHelper: Packaging (HTML5):    at AutomationTool.CommandUtils.RunUBT(CommandEnvironment Env, String UBTExecutable, FileReference Project, String Target, String Platform, String Config, String AdditionalArgs, String LogName, Dictionary`2 EnvVars)
UATHelper: Packaging (HTML5):    at AutomationTool.UE4Build.BuildWithUBT(String TargetName, UnrealTargetPlatform TargetPlatform, String Config, FileReference UprojectPath, Boolean ForceMonolithic, Boolean ForceNonUnity, Boolean ForceDebugInfo, Boolean ForceFlushMac, Boolean DisableXGE, String InAddArgs, Boolean ForceUnity, Dictionary`2 EnvVars)
UATHelper: Packaging (HTML5):    at AutomationTool.UE4Build.Build(BuildAgenda Agenda, Nullable`1 InDeleteBuildProducts, Boolean InUpdateVersionFiles, Boolean InForceNoXGE, Boolean InUseParallelExecutor, Boolean InForceNonUnity, Boolean InForceUnity, Boolean InShowProgress, Dictionary`2 PlatformEnvVars, Nullable`1 InChangelistNumberOverride, Dictionary`2 InTa
rgetToManifest)
UATHelper: Packaging (HTML5):    at Project.Build(BuildCommand Command, ProjectParams Params, Int32 WorkingCL, ProjectBuildTargets TargetMask)
UATHelper: Packaging (HTML5):    at BuildCookRun.DoBuildCookRun(ProjectParams Params)
UATHelper: Packaging (HTML5):    at AutomationTool.BuildCommand.Execute()
UATHelper: Packaging (HTML5):    at AutomationTool.Automation.Execute(List`1 CommandsToExecute, CaselessDictionary`1 Commands)
UATHelper: Packaging (HTML5):    at AutomationTool.Automation.Process(String[] Arguments)
UATHelper: Packaging (HTML5):    at AutomationTool.Program.MainProc(Object Param)
UATHelper: Packaging (HTML5):    at AutomationTool.InternalUtils.RunSingleInstance(Func`2 Main, Object Param)
UATHelper: Packaging (HTML5):    at AutomationTool.Program.Main()
UATHelper: Packaging (HTML5): Program.Main: AutomationTool exiting with ExitCode=5 (5)
UATHelper: Packaging (HTML5): BUILD FAILED
PackagingResults:Error: Error Unknown Error

Here is the failure with Substance Plug-in:

UATHelper: Packaging (HTML5): Project.Build: ********** BUILD COMMAND STARTED **********
UATHelper: Packaging (HTML5): CommandUtils.Run: Run: C:\Program Files\Epic Games\4.13\Engine\Binaries\DotNET\UnrealBuildTool.exe UE4Game HTML5 Shipping -clean  -remoteini="H:\PROJECTS\ProjectName\GameName" -nobuilduht -NoHotReload
UATHelper: Packaging (HTML5): UnrealBuildTool: ERROR: No modules found to build. All requested binaries were already part of the installed engine data.
UATHelper: Packaging (HTML5): CommandUtils.Run: Run: Took 0.9908611s to run UnrealBuildTool.exe, ExitCode=5
UATHelper: Packaging (HTML5): Program.Main: ERROR: AutomationTool terminated with exception: AutomationTool.CommandUtils+CommandFailedException: Command failed (Result:5): C:\Program Files\Epic Games\4.13\Engine\Binaries\DotNET\UnrealBuildTool.exe UE4Game HTML5 Shipping -clean  -remote
UATHelper: Packaging (HTML5): ini="H:\PROJECTS\ProjectName\GameName" -nobuilduht -NoHotReload. See logfile for details: 'UnrealBuildTool-2016.12.02-10.00.52.txt' 
UATHelper: Packaging (HTML5):    at AutomationTool.CommandUtils.RunAndLog(String App, String CommandLine, String Logfile, Int32 MaxSuccessCode, String Input, ERunOptions Options, Dictionary`2 EnvVars, SpewFilterCallbackType SpewFilterCallback)
UATHelper: Packaging (HTML5):    at AutomationTool.CommandUtils.RunAndLog(CommandEnvironment Env, String App, String CommandLine, String LogName, Int32 MaxSuccessCode, String Input, ERunOptions Options, Dictionary`2 EnvVars, SpewFilterCallbackType SpewFilterCallback)
UATHelper: Packaging (HTML5):    at AutomationTool.CommandUtils.RunUBT(CommandEnvironment Env, String UBTExecutable, String CommandLine, String LogName, Dictionary`2 EnvVars)
UATHelper: Packaging (HTML5):    at AutomationTool.CommandUtils.RunUBT(CommandEnvironment Env, String UBTExecutable, FileReference Project, String Target, String Platform, String Config, String AdditionalArgs, String LogName, Dictionary`2 EnvVars)
UATHelper: Packaging (HTML5):    at AutomationTool.UE4Build.CleanWithUBT(String TargetName, UnrealTargetPlatform Platform, String Config, FileReference UprojectPath, Boolean ForceMonolithic, Boolean ForceNonUnity, Boolean ForceDebugInfo, String InAddArgs, Boolean ForceUnity, Dictionary`2 EnvVars)
UATHelper: Packaging (HTML5):    at AutomationTool.UE4Build.Build(BuildAgenda Agenda, Nullable`1 InDeleteBuildProducts, Boolean InUpdateVersionFiles, Boolean InForceNoXGE, Boolean InUseParallelExecutor, Boolean InForceNonUnity, Boolean InForceUnity, Boolean InShowProgress, Dictionary`2 PlatformEnvVars, Nullable`1 InChangelistNumberOverride, Dictionary`2 InTa
rgetToManifest)
UATHelper: Packaging (HTML5):    at Project.Build(BuildCommand Command, ProjectParams Params, Int32 WorkingCL, ProjectBuildTargets TargetMask)
UATHelper: Packaging (HTML5):    at BuildCookRun.DoBuildCookRun(ProjectParams Params)
UATHelper: Packaging (HTML5):    at AutomationTool.BuildCommand.Execute()
UATHelper: Packaging (HTML5):    at AutomationTool.Automation.Execute(List`1 CommandsToExecute, CaselessDictionary`1 Commands)
UATHelper: Packaging (HTML5):    at AutomationTool.Automation.Process(String[] Arguments)
UATHelper: Packaging (HTML5):    at AutomationTool.Program.MainProc(Object Param)
UATHelper: Packaging (HTML5):    at AutomationTool.InternalUtils.RunSingleInstance(Func`2 Main, Object Param)
UATHelper: Packaging (HTML5):    at AutomationTool.Program.Main()
UATHelper: Packaging (HTML5): Program.Main: AutomationTool exiting with ExitCode=5 (5)
UATHelper: Packaging (HTML5): BUILD FAILED
PackagingResults:Error: Error Unknown Error

I have tried this in both 4.14 and 4.13.2. Both versions have been verified to make sure nothing is missing. Any and all ideas are welcome!

Maybe this needs to be in Packaging and Deployment? If someone with the power to do that could make the switch it would be awesome. Really need some help with this.

HaxO,

If you are running third-party plugins in your project and they’re causing your builds to fail, you’re going to need to contact the creators of those projects. Substance causes a lot of packaging issues in general, which will need to be brought up to the creator. Review the [forums][1], the [C++ section][2] may help you as well.

Thanks!

https://forums.unrealengine.com/
[2]: https://forums.unrealengine.com/forumdisplay.php?9-C-Gameplay-Programming