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!