Continuous errors when packaging for HTML

I have a Tank shooter game that I am creating and I am trying to build the game so I can put it on my website (so am packaging in HTML) My build config is for Development (since its not completed yet but works fine). Would really appreciate if someone could help me.

I get these errors when trying to build:

LogUObjectGlobals: Destroyed PersistentFrame Addr=0x000002a14c74d648, Size=40
UATHelper: Packaging (HTML5): Running AutomationTool…
UATHelper: Packaging (HTML5): Parsing command line: -ScriptsForProject=“C:/Users/maxst/Desktop/TankShooter/TankShooter - L164/WarTanks/WarTanks.uproject” BuildCookRun -nocompile -nocompileeditor -installed -nop4 -project=“C:/Users/maxst/Desktop/TankShooter/TankShooter - L164/WarTanks/WarTanks.uproject” -cook -stage -archive -archivedirectory=“C:/Users/maxst/
Desktop/TankShooter/TankShooter - L164/WarTanks/_Build/HTML” -package -clientconfig=Development -ue4exe=UE4Editor-Cmd.exe -prereqs -nodebuginfo -targetplatform=HTML5 -build -utf8output
UATHelper: Packaging (HTML5): Setting up ProjectParams for C:\Users\maxst\Desktop\TankShooter\TankShooter - L164\WarTanks\WarTanks.uproject
UATHelper: Packaging (HTML5): ********** BUILD COMMAND STARTED **********
UATHelper: Packaging (HTML5): Running: E:\UNREAL ENGINE\UE_4.19\Engine\Binaries\DotNET\UnrealBuildTool.exe WarTanks HTML5 Development -Project=“C:\Users\maxst\Desktop\TankShooter\TankShooter - L164\WarTanks\WarTanks.uproject” “C:\Users\maxst\Desktop\TankShooter\TankShooter - L164\WarTanks\WarTanks.uproject” -NoUBTMakefiles -remoteini=“C:\Users\maxst\Deskto
p\TankShooter\TankShooter - L164\WarTanks” -skipdeploy -noxge -generatemanifest -NoHotReload
UATHelper: Packaging (HTML5): Using ‘git status’ to determine working set for adaptive non-unity build.
UATHelper: Packaging (HTML5): HTML5ToolChain: TargetWebGL2 = True
UATHelper: Packaging (HTML5): HTML5ToolChain: EnableSIMD = False
UATHelper: Packaging (HTML5): HTML5ToolChain: EnableMultithreading False
UATHelper: Packaging (HTML5): HTML5ToolChain: EnableTracing = False
UATHelper: Packaging (HTML5): Took 0.7906836s to run UnrealBuildTool.exe, ExitCode=0
UATHelper: Packaging (HTML5): Running: E:\UNREAL ENGINE\UE_4.19\Engine\Binaries\DotNET\UnrealBuildTool.exe WarTanks HTML5 Development -Project=“C:\Users\maxst\Desktop\TankShooter\TankShooter - L164\WarTanks\WarTanks.uproject” “C:\Users\maxst\Desktop\TankShooter\TankShooter - L164\WarTanks\WarTanks.uproject” -NoUBTMakefiles -remoteini=“C:\Users\maxst\Deskto
p\TankShooter\TankShooter - L164\WarTanks” -skipdeploy -noxge -NoHotReload -ignorejunk
UATHelper: Packaging (HTML5): Using ‘git status’ to determine working set for adaptive non-unity build.
UATHelper: Packaging (HTML5): HTML5ToolChain: TargetWebGL2 = True
UATHelper: Packaging (HTML5): HTML5ToolChain: EnableSIMD = False
UATHelper: Packaging (HTML5): HTML5ToolChain: EnableMultithreading False
UATHelper: Packaging (HTML5): HTML5ToolChain: EnableTracing = False
UATHelper: Packaging (HTML5): HTML5ToolChain: Development -Oz favor size over speed
UATHelper: Packaging (HTML5): Setting Emscripten SDK: located in E:\UNREAL ENGINE\UE_4.19\Engine\Extras\ThirdPartyNotUE\emsdk\emscripten\1.37.19
UATHelper: Packaging (HTML5): emcc ExitCode: 0
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5): # Note: If you put paths relative to the home directory, do not forget os.path.expanduser
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5): # Note: On Windows, remember to escape backslashes! I.e. EMSCRIPTEN_ROOT=‘c:\emscripten’ is not valid, but EMSCRIPTEN_ROOT=‘c:\emscripten\’ and EMSCRIPTEN_ROOT=‘c:/emscripten/’ are.
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5): import os
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5): # this helps projects using emscripten find it
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5): EMSCRIPTEN_ROOT = os.path.expanduser(os.getenv(‘EMSCRIPTEN’, ‘E:\UNREAL ENGINE\UE_4.19\Engine\Extras\ThirdPartyNotUE\emsdk\emscripten\1.37.19’)) # directory
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5): LLVM_ROOT = os.path.expanduser(os.getenv(‘LLVM’, ‘E:\UNREAL ENGINE\UE_4.19\Engine\Extras\ThirdPartyNotUE\emsdk\Win64\clang\e1.37.19_64bit’)) # directory
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5): BINARYEN_ROOT = ‘E:\UNREAL ENGINE\UE_4.19\Engine\Extras\ThirdPartyNotUE\emsdk\Win64\clang\e1.37.19_64bit\binaryen’
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5): # If not specified, defaults to sys.executable.
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5): PYTHON = ‘E:\UNREAL ENGINE\UE_4.19\Engine\Extras\ThirdPartyNotUE\emsdk\Win64\python\2.7.5.3_64bit\python.exe’
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5): # Add this if you have manually built the JS optimizer executable (in Emscripten/tools/optimizer) and want to run it from a custom location.
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5): # Alternatively, you can set this as the environment variable EMSCRIPTEN_NATIVE_OPTIMIZER.
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5): EMSCRIPTEN_NATIVE_OPTIMIZER = ‘E:\UNREAL ENGINE\UE_4.19\Engine\Extras\ThirdPartyNotUE\emsdk\Win64\clang\e1.37.19_64bit\optimizer.exe’
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5): # See below for notes on which JS engine(s) you need
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5): NODE_JS = os.path.expanduser(os.getenv(‘NODE’, ‘E:\UNREAL ENGINE\UE_4.19\Engine\Extras\ThirdPartyNotUE\emsdk\Win64\node\4.1.1_64bit\bin\node.exe’)) # executable
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5): SPIDERMONKEY_ENGINE = [os.path.expanduser(os.getenv(‘SPIDERMONKEY’, ‘js’))] # executable
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5): V8_ENGINE = os.path.expanduser(os.getenv(‘V8’, ‘d8’)) # executable
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5): JAVA = ‘java’ # executable
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5): TEMP_DIR = ‘C:\Users\maxst\AppData\Local\Temp’
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5): CRUNCH = os.path.expanduser(os.getenv(‘CRUNCH’, ‘crunch’)) # executable
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5): #CLOSURE_COMPILER = ‘…’ # define this to not use the bundled version
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5): ########################################################################################################
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5): # Pick the JS engine to use for running the compiler. This engine must exist, or
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5): # nothing can be compiled.
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5): #
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5): # Recommendation: If you already have node installed, use that. Otherwise, build v8 or
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5): # spidermonkey from source. Any of these three is fine, as long as it’s
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5): # a recent version (especially for v8 and spidermonkey).
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5): COMPILER_ENGINE = NODE_JS
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5): #COMPILER_ENGINE = V8_ENGINE
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5): #COMPILER_ENGINE = SPIDERMONKEY_ENGINE
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5): # All JS engines to use when running the automatic tests. Not all the engines in this list
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5): # must exist (if they don’t, they will be skipped in the test runner).
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5): #
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5): # Recommendation: If you already have node installed, use that. If you can, also build
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5): # spidermonkey from source as well to get more test coverage (node can’t
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5): # run all the tests due to node issue 1669). v8 is currently not recommended
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5): # here because of v8 issue 1822.
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5):
UATHelper: Packaging (HTML5): JS_ENGINES = [NODE_JS] # add this if you have spidermonkey installed too, SPIDERMONKEY_ENGINE]
UATHelper: Packaging (HTML5): Performing 7 actions (4 in parallel)
UATHelper: Packaging (HTML5): [1/7] Compile Tank.cpp
UATHelper: Packaging (HTML5): [3/7] Compile TankPlayerController.cpp
UATHelper: Packaging (HTML5): [2/7] Compile TankAimingComponent.cpp
UATHelper: Packaging (HTML5): [4/7] Compile TankTurret.cpp
UATHelper: Packaging (HTML5): In file included from C:/Users/maxst/Desktop/TankShooter/TankShooter - L164/WarTanks/Source/WarTanks/Private/TankAimingComponent.cpp:3:
UATHelper: Packaging (HTML5): C:/Users/maxst/Desktop/TankShooter/TankShooter - L164/WarTanks/Source/WarTanks/Public/TankAimingComponent.h:5:10: warning: non-portable path to file ‘“Kismet/GameplayStatics.h”’; specified path differs in case from file name on disk [-Wnonportable-include-path]
UATHelper: Packaging (HTML5): #include “kismet/GameplayStatics.h”
UATHelper: Packaging (HTML5): ^~~~~~~~~~~~~~~~~~~~~~~~~~
UATHelper: Packaging (HTML5): “Kismet/GameplayStatics.h”
PackagingResults: Warning: non-portable path to file ‘“Kismet/GameplayStatics.h”’; specified path differs in case from file name on disk [-Wnonportable-include-path]
UATHelper: Packaging (HTML5): In file included from C:/Users/maxst/Desktop/TankShooter/TankShooter - L164/WarTanks/Source/WarTanks/Private/Tank.cpp:6:
UATHelper: Packaging (HTML5): C:/Users/maxst/Desktop/TankShooter/TankShooter - L164/WarTanks/Source/WarTanks/Public/TankAimingComponent.h:5:10: warning: non-portable path to file ‘“Kismet/GameplayStatics.h”’; specified path differs in case from file name on disk [-Wnonportable-include-path]
UATHelper: Packaging (HTML5): #include “kismet/GameplayStatics.h”
UATHelper: Packaging (HTML5): ^~~~~~~~~~~~~~~~~~~~~~~~~~
UATHelper: Packaging (HTML5): “Kismet/GameplayStatics.h”
PackagingResults: Warning: non-portable path to file ‘“Kismet/GameplayStatics.h”’; specified path differs in case from file name on disk [-Wnonportable-include-path]
UATHelper: Packaging (HTML5): C:/Users/maxst/Desktop/TankShooter/TankShooter - L164/WarTanks/Source/WarTanks/Private/TankAimingComponent.cpp:58:25: error: member access into incomplete type ‘UWorld’
UATHelper: Packaging (HTML5): auto Time = GetWorld()->GetTimeSeconds();
UATHelper: Packaging (HTML5): ^
UATHelper: Packaging (HTML5): Runtime/Core/Public/GenericPlatform/GenericPlatformMisc.h:823:25: note: forward declaration of ‘UWorld’
UATHelper: Packaging (HTML5): static bool Exec(class UWorld* InWorld, const TCHAR* Cmd, FOutputDevice& Out)
UATHelper: Packaging (HTML5): ^
PackagingResults: Error: member access into incomplete type ‘UWorld’
UATHelper: Packaging (HTML5): C:/Users/maxst/Desktop/TankShooter/TankShooter - L164/WarTanks/Source/WarTanks/Private/Tank.cpp:55:31: error: member access into incomplete type ‘UWorld’
UATHelper: Packaging (HTML5): auto Projectile = GetWorld()->SpawnActor(
UATHelper: Packaging (HTML5): ^
UATHelper: Packaging (HTML5): Runtime/Core/Public/GenericPlatform/GenericPlatformMisc.h:823:25: note: forward declaration of ‘UWorld’
UATHelper: Packaging (HTML5): static bool Exec(class UWorld* InWorld, const TCHAR* Cmd, FOutputDevice& Out)
UATHelper: Packaging (HTML5): ^
UATHelper: Packaging (HTML5): C:/Users/maxst/Desktop/TankShooter/TankShooter - L164/WarTanks/Source/WarTanks/Private/TankPlayerController.cpp:59:16: error: member access into incomplete type ‘UWorld’
UATHelper: Packaging (HTML5): if (GetWorld()->LineTraceSingleByChannel(
UATHelper: Packaging (HTML5): ^
UATHelper: Packaging (HTML5): Runtime/Core/Public/GenericPlatform/GenericPlatformMisc.h:823:25: note: forward declaration of ‘UWorld’
UATHelper: Packaging (HTML5): static bool Exec(class UWorld* InWorld, const TCHAR* Cmd, FOutputDevice& Out)
UATHelper: Packaging (HTML5): ^
UATHelper: Packaging (HTML5): 1 error generated.
PackagingResults: Error: member access into incomplete type ‘UWorld’
UATHelper: Packaging (HTML5): ERROR:root:compiler frontend failed to generate LLVM bitcode, halting
UATHelper: Packaging (HTML5): C:/Users/maxst/Desktop/TankShooter/TankShooter - L164/WarTanks/Source/WarTanks/Private/TankTurret.cpp:8:72: error: member access into incomplete type ‘UWorld’
UATHelper: Packaging (HTML5): auto RotationChange = RelativeSpeed * MaxDegreesPerSecond * GetWorld()->DeltaTimeSeconds;
UATHelper: Packaging (HTML5): ^
UATHelper: Packaging (HTML5): Runtime/Core/Public/GenericPlatform/GenericPlatformMisc.h:823:25: note: forward declaration of ‘UWorld’
UATHelper: Packaging (HTML5): static bool Exec(class UWorld* InWorld, const TCHAR* Cmd, FOutputDevice& Out)
UATHelper: Packaging (HTML5): ^
UATHelper: Packaging (HTML5): 1 error generated.
UATHelper: Packaging (HTML5): ERROR:root:compiler frontend failed to generate LLVM bitcode, halting
PackagingResults: Error: member access into incomplete type ‘UWorld’
PackagingResults: Error: member access into incomplete type ‘UWorld’
UATHelper: Packaging (HTML5): [5/7] Compile TankBarrel.cpp
UATHelper: Packaging (HTML5): [6/7] Compile TankAIController.cpp
UATHelper: Packaging (HTML5): 1 warning and 1 error generated.
UATHelper: Packaging (HTML5): ERROR:root:compiler frontend failed to generate LLVM bitcode, halting
UATHelper: Packaging (HTML5): 1 warning and 1 error generated.
UATHelper: Packaging (HTML5): ERROR:root:compiler frontend failed to generate LLVM bitcode, halting
UATHelper: Packaging (HTML5): C:/Users/maxst/Desktop/TankShooter/TankShooter - L164/WarTanks/Source/WarTanks/Private/TankAIController.cpp:17:42: error: member access into incomplete type ‘UWorld’
UATHelper: Packaging (HTML5): auto PlayerTank = Cast(GetWorld()->GetFirstPlayerController()->GetPawn());
UATHelper: Packaging (HTML5): ^
UATHelper: Packaging (HTML5): Runtime/Core/Public/GenericPlatform/GenericPlatformMisc.h:823:25: note: forward declaration of ‘UWorld’
UATHelper: Packaging (HTML5): static bool Exec(class UWorld* InWorld, const TCHAR* Cmd, FOutputDevice& Out)
UATHelper: Packaging (HTML5): ^
PackagingResults: Error: member access into incomplete type ‘UWorld’
UATHelper: Packaging (HTML5): C:/Users/maxst/Desktop/TankShooter/TankShooter - L164/WarTanks/Source/WarTanks/Private/TankBarrel.cpp:9:73: error: member access into incomplete type ‘UWorld’
UATHelper: Packaging (HTML5): auto ElevationChange = RelativeSpeed * MaxDegreesPerSecond * GetWorld()->DeltaTimeSeconds;
PackagingResults: Error: member access into incomplete type ‘UWorld’
UATHelper: Packaging (HTML5): ^
UATHelper: Packaging (HTML5): Runtime/Core/Public/GenericPlatform/GenericPlatformMisc.h:823:25: note: forward declaration of ‘UWorld’
UATHelper: Packaging (HTML5): static bool Exec(class UWorld* InWorld, const TCHAR* Cmd, FOutputDevice& Out)
UATHelper: Packaging (HTML5): ^
UATHelper: Packaging (HTML5): 1 error generated.
UATHelper: Packaging (HTML5): ERROR:root:compiler frontend failed to generate LLVM bitcode, halting
UATHelper: Packaging (HTML5): 1 error generated.
UATHelper: Packaging (HTML5): ERROR:root:compiler frontend failed to generate LLVM bitcode, halting
UATHelper: Packaging (HTML5): ERROR: UBT ERROR: Failed to produce item: C:\Users\maxst\Desktop\TankShooter\TankShooter - L164\WarTanks\Binaries\HTML5\WarTanks.js
PackagingResults: Error: UBT ERROR: Failed to produce item: C:\Users\maxst\Desktop\TankShooter\TankShooter - L164\WarTanks\Binaries\HTML5\WarTanks.js
UATHelper: Packaging (HTML5): Total build time: 13.55 seconds (Local executor: 0.00 seconds)
UATHelper: Packaging (HTML5): Took 13.7475471s to run UnrealBuildTool.exe, ExitCode=5
UATHelper: Packaging (HTML5): ERROR: Command failed (Result:5): E:\UNREAL ENGINE\UE_4.19\Engine\Binaries\DotNET\UnrealBuildTool.exe WarTanks HTML5 Development -Project=“C:\Users\maxst\Desktop\TankShooter\TankShooter - L164\WarTanks\WarTanks.uproject” “C:\Users\maxst\Desktop\TankShooter\TankShooter - L164\WarTanks\WarTanks.uproject” -NoUBTMakefiles -remotei
ni=“C:\Users\maxst\Desktop\TankShooter\TankShooter - L164\WarTanks” -skipdeploy -noxge -NoHotReload -ignorejunk. See logfile for details: ‘UnrealBuildTool-2018.07.11-10.21.45.txt’
UATHelper: Packaging (HTML5): (see C:\Users\maxst\AppData\Roaming\Unreal Engine\AutomationTool\Logs\E+UNREAL+ENGINE+UE_4.19\UAT_Log.txt for full exception trace)
PackagingResults: Error: Command failed (Result:5): E:\UNREAL ENGINE\UE_4.19\Engine\Binaries\DotNET\UnrealBuildTool.exe WarTanks HTML5 Development -Project=“C:\Users\maxst\Desktop\TankShooter\TankShooter - L164\WarTanks\WarTanks.uproject” “C:\Users\maxst\Desktop\TankShooter\TankShooter - L164\WarTanks\WarTanks.uproject” -NoUBTMakefiles -remoteini=“C:\Users
\maxst\Desktop\TankShooter\TankShooter - L164\WarTanks” -skipdeploy -noxge -NoHotReload -ignorejunk. See logfile for details: ‘UnrealBuildTool-2018.07.11-10.21.45.txt’
UATHelper: Packaging (HTML5): AutomationTool exiting with ExitCode=5 (5)
UATHelper: Packaging (HTML5): BUILD FAILED
PackagingResults: Error: Unknown Error

Can you do this for me? Yes. Will I do this for you? NO. You are going to have to take responsibility here.

80% of your log is just filling space and wasting time.

Which error are you trying to solve? Create a ticket for each one. Start with the first error. IT is likely that downstream errors are caused by earlier errors. And fixing the earlier error makes the down stream error go away.

Your first error:

C:/Users/maxst/Desktop/TankShooter/TankShooter - L164/WarTanks/Source/WarTanks/Private/TankAimingComponent.cpp:58:25: error: member access into incomplete type ‘UWorld’

Is a compiler error. You cannot package a game that does not compile.

Fix the compiler error(s) then Cook. Then package.

You might try going to the top of the file ‘TankAimingComponent.cpp’ and adding the proper include which will include the member declarations for UWorld. like #include “World.h”. That is where the members are declared. And that would make UWorld a complete type.

These are simple c++ programming issues. They have nothing at all to do with unreal.