Error Building for android on 4.12

Hi Everyone,

So im trying to build my project for android on 4.12 and im getting a weird compiler error, it fails almost right away and shoots this error.



Packaging (Android (ATC)): UnrealBuildTool: ERROR: Attempted to use UEBuildBinaryConfiguration.OutputFilePath property, but there are multiple (or no) OutputFilePaths. You need to handle multiple in the code that called this (size = 2)
MainFrameActions: Packaging (Android (ATC)): CommandUtils.Run: Run: Took 2.7060008s to run UnrealBuildTool.exe, ExitCode=5

The same thing shows in both the log files.

UAT_Log
UnrealBuildTool Log

I can’t for the life of me figure out whats going on and I dont wan’t to start a new project :frowning: New projects compile without a hitch so im confused.

Thanks

Two things to look at. Did you turn on more than one architecture to compile (armv7 and arm64 together)? It works for me (and or build machines use this to make both sets of libraries and so files), but that may be part of the problem. Also, try deleting the contents of Binaries, Intermediate, and Saved in your project’s directory and load the project in the editor and try packaging again; maybe something got messed up.

Just tried this turned off ArmV7 and left on Arm64, deleted the folders and did a repackage. Now im getting this error


MainFrameActions: Packaging (Android (ATC)): Project.Build: ********** BUILD COMMAND STARTED **********
MainFrameActions: Packaging (Android (ATC)): CommandUtils.Run: Run: C:\Program Files (x86)\Epic Games\4.12\Engine\Binaries\DotNET\UnrealBuildTool.exe EnterAurora Android Development -Project="D:\\Projects\EnterAurora\EnterAurora.uproject"  "D:\\Projects\EnterAurora\EnterAurora.uproject"  -remoteini="D:\Voltive Interactiv
e\Projects\EnterAurora" -noxge -generatemanifest -NoHotReloadFromIDE
MainFrameActions: Packaging (Android (ATC)): UnrealBuildTool: NDK version: 22, GccVersion: 4.9
MainFrameActions: Packaging (Android (ATC)): UnrealBuildTool: building WITHOUT VULKAN define
MainFrameActions: Packaging (Android (ATC)): CommandUtils.Run: Run: Took 2.9425005s to run UnrealBuildTool.exe, ExitCode=0
MainFrameActions: Packaging (Android (ATC)): CommandUtils.Run: Run: C:\Program Files (x86)\Epic Games\4.12\Engine\Binaries\DotNET\UnrealBuildTool.exe EnterAurora Android Development -Project="D:\\Projects\EnterAurora\EnterAurora.uproject"  "D:\\Projects\EnterAurora\EnterAurora.uproject"  -remoteini="D:\Voltive Interactiv
e\Projects\EnterAurora" -noxge -NoHotReloadFromIDE -ignorejunk
MainFrameActions: Packaging (Android (ATC)): UnrealBuildTool: Creating makefile for EnterAurora (no existing makefile)
MainFrameActions: Packaging (Android (ATC)): UnrealBuildTool: Performing full C++ include scan (no include cache file)
MainFrameActions: Packaging (Android (ATC)): UnrealBuildTool: NDK version: 22, GccVersion: 4.9
MainFrameActions: Packaging (Android (ATC)): UnrealBuildTool: building WITHOUT VULKAN define
MainFrameActions: Packaging (Android (ATC)): UnrealBuildTool: Parsing headers for EnterAurora
MainFrameActions: Packaging (Android (ATC)): UnrealBuildTool:   Running UnrealHeaderTool "D:\\Projects\EnterAurora\EnterAurora.uproject" "D:\\Projects\EnterAurora\Intermediate\Build\Android\EnterAurora\Development\EnterAurora.uhtmanifest" -LogCmds="loginit warning, logexit warning, logdatabase error" -Unattended -Warning
sAsErrors -installed
MainFrameActions: Packaging (Android (ATC)): UnrealBuildTool: Reflection code generated for EnterAurora in 4.4742257 seconds
MainFrameActions: Packaging (Android (ATC)): UnrealBuildTool: Compiling Native code with NDK API 'android-22'
MainFrameActions: Packaging (Android (ATC)): UnrealBuildTool: Performing 15 actions (4 in parallel)
MainFrameActions: Packaging (Android (ATC)): UnrealBuildTool: [1/15] clang++.exe EnterAurora.h [arm64-es2]
MainFrameActions: Packaging (Android (ATC)): UnrealBuildTool: [2/15] clang++.exe UELinkerFixupsName.h [arm64-es2]
MainFrameActions: Packaging (Android (ATC)): UnrealBuildTool: In file included from D://Projects/EnterAurora/Intermediate/Build/Android/EnterAurora/Development/EnterAurora/EnterAurora.h:4:
MainFrameActions: Packaging (Android (ATC)): UnrealBuildTool: In file included from D:\\Projects\EnterAurora\Source\EnterAurora\EnterAurora.h:5:
MainFrameActions: Packaging (Android (ATC)): UnrealBuildTool: In file included from Runtime/Engine/Public\Engine.h:9:
MainFrameActions: Packaging (Android (ATC)): UnrealBuildTool: In file included from Runtime/Core/Public\Core.h:16:
MainFrameActions: Packaging (Android (ATC)): UnrealBuildTool: Runtime/Core/Public/HAL\PlatformIncludes.h(6,10) :  fatal error: 'wchar.h' file not found
MainFrameActions: Packaging (Android (ATC)): UnrealBuildTool: #include <wchar.h>
MainFrameActions: Packaging (Android (ATC)): UnrealBuildTool:          ^
MainFrameActions: Packaging (Android (ATC)): UnrealBuildTool: [3/15] clang++.exe UELinkerFixups.cpp [arm64-es2]
MainFrameActions: Packaging (Android (ATC)): UnrealBuildTool: 1 error generated.
MainFrameActions: Packaging (Android (ATC)): UnrealBuildTool: ERROR: UBT ERROR: Failed to produce item: D:\\Projects\EnterAurora\Binaries\Android\EnterAurora-arm64-es2.so
MainFrameActions: Packaging (Android (ATC)): UnrealBuildTool: Total build time: 24.63 seconds
MainFrameActions: Packaging (Android (ATC)): CommandUtils.Run: Run: Took 26.6770027s to run UnrealBuildTool.exe, ExitCode=5
MainFrameActions: Packaging (Android (ATC)): Program.Main: ERROR: AutomationTool terminated with exception: AutomationTool.AutomationException: Command failed (Result:5): C:\Program Files (x86)\Epic Games\4.12\Engine\Binaries\DotNET\UnrealBuildTool.exe EnterAurora Android Development -Project="D:\\Projects\EnterAurora\EnterAurora.uproject"
  "D:\\Projects\EnterAurora\EnterAurora.uproject"  -remoteini="D:\\Projects\EnterAurora" -noxge -NoHotReloadFromIDE -ignorejunk. See logfile for details: 'UnrealBuildTool-2016.06.24-22.40.05.txt' 
MainFrameActions: Packaging (Android (ATC)):    at AutomationTool.CommandUtils.RunAndLog(String App, String CommandLine, String Logfile, Int32 MaxSuccessCode, String Input, ERunOptions Options, Dictionary`2 EnvVars)
MainFrameActions: Packaging (Android (ATC)):    at AutomationTool.CommandUtils.RunUBT(CommandEnvironment Env, String UBTExecutable, String CommandLine, String LogName, Dictionary`2 EnvVars)
MainFrameActions: Packaging (Android (ATC)):    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
)
MainFrameActions: Packaging (Android (ATC)):    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, Di
ctionary`2 InTargetToManifest)
MainFrameActions: Packaging (Android (ATC)):    at Project.Build(BuildCommand Command, ProjectParams Params, Int32 WorkingCL, ProjectBuildTargets TargetMask)
MainFrameActions: Packaging (Android (ATC)):    at BuildCookRun.DoBuildCookRun(ProjectParams Params)
MainFrameActions: Packaging (Android (ATC)):    at AutomationTool.BuildCommand.Execute()
MainFrameActions: Packaging (Android (ATC)):    at AutomationTool.Automation.Execute(List`1 CommandsToExecute, CaselessDictionary`1 Commands)
MainFrameActions: Packaging (Android (ATC)):    at AutomationTool.Automation.Process(String] CommandLine)
MainFrameActions: Packaging (Android (ATC)):    at AutomationTool.Program.MainProc(Object Param)
MainFrameActions: Packaging (Android (ATC)):    at AutomationTool.InternalUtils.RunSingleInstance(Func`2 Main, Object Param)
MainFrameActions: Packaging (Android (ATC)):    at AutomationTool.Program.Main()
MainFrameActions: Packaging (Android (ATC)): Program.Main: AutomationTool exiting with ExitCode=5 (5)
MainFrameActions: Packaging (Android (ATC)): Domain_ProcessExit
MainFrameActions: Packaging (Android (ATC)): copying UAT log files...
MainFrameActions: Packaging (Android (ATC)): BUILD FAILED

Missing WChar.h?

Missing include files usually is due to not installing the NDK platform for that API level. It looks like you are trying to use 22 and the CodeWorks for Android installer will include 19 and 21.

I have the same problem. How could I solve it? Thx

You can either set the NDK level in Android SDK project settings to android-21.

I also have an error when I enable both armv7 and arm64 supports. But I don’t have any problem building my project when I enable each seperatly (I mean when I enable one and disable the other).

Here is my error:


UATHelper: Packaging (Android (ATC)): Running AutomationTool...
UATHelper: Packaging (Android (ATC)): Automation.ParseCommandLine: Parsing command line: -ScriptsForProject=C:/MyProjects/proto/proto/proto.uproject BuildCookRun -nocompile -nocompileeditor -installed -nop4 -project=C:/MyProjects/proto/proto/proto.uproject -cook -stage -archive -archivedirectory=C:/Users/admin/Desktop/Android_Builds -package -clientconfig=Shipping -ue
4exe=UE4Editor-Cmd.exe -clean -pak -prereqs -nodebuginfo -targetplatform=Android -cookflavor=ATC -build -CrashReporter -utf8output
UATHelper: Packaging (Android (ATC)): Automation.Process: Setting up command environment.
UATHelper: Packaging (Android (ATC)): BuildCookRun.SetupParams: Setting up ProjectParams for C:\MyProjects\proto\proto\proto.uproject
UATHelper: Packaging (Android (ATC)): Project.Build: ********** BUILD COMMAND STARTED **********
UATHelper: Packaging (Android (ATC)): CommandUtils.Run: Run: C:\Program Files (x86)\Epic Games\4.14\Engine\Binaries\DotNET\UnrealBuildTool.exe proto Android Shipping -Project=C:\MyProjects\proto\proto\proto.uproject -clean C:\MyProjects\proto\proto\proto.uproject  -remoteini="C:\MyProjects\proto\proto" -nobuilduht -NoHotReload
UATHelper: Packaging (Android (ATC)): UnrealBuildTool: NDK version: 24, GccVersion: 4.9
UATHelper: Packaging (Android (ATC)): UnrealBuildTool: ERROR: Attempted to use UEBuildBinaryConfiguration.OutputFilePath property, but there are multiple (or no) OutputFilePaths. You need to handle multiple in the code that called this (size = 2)
UATHelper: Packaging (Android (ATC)): CommandUtils.Run: Run: Took 0,8036369s to run UnrealBuildTool.exe, ExitCode=5
UATHelper: Packaging (Android (ATC)): Program.Main: ERROR: AutomationTool terminated with exception: AutomationTool.CommandUtils+CommandFailedException: Command failed (Result:5): C:\Program Files (x86)\Epic Games\4.14\Engine\Binaries\DotNET\UnrealBuildTool.exe proto Android Shipping -Project=C:\MyProjects\proto\proto\proto.uproject -clean C:\MyProjects\proto\proto\pr
oto.uproject  -remoteini="C:\MyProjects\proto\proto" -nobuilduht -NoHotReload. See logfile for details: 'UnrealBuildTool-2016.11.25-15.19.25.txt' 
UATHelper: Packaging (Android (ATC)):    à AutomationTool.CommandUtils.RunAndLog(String App, String CommandLine, String Logfile, Int32 MaxSuccessCode, String Input, ERunOptions Options, Dictionary`2 EnvVars, SpewFilterCallbackType SpewFilterCallback)
UATHelper: Packaging (Android (ATC)):    à AutomationTool.CommandUtils.RunAndLog(CommandEnvironment Env, String App, String CommandLine, String LogName, Int32 MaxSuccessCode, String Input, ERunOptions Options, Dictionary`2 EnvVars, SpewFilterCallbackType SpewFilterCallback)
UATHelper: Packaging (Android (ATC)):    à AutomationTool.CommandUtils.RunUBT(CommandEnvironment Env, String UBTExecutable, String CommandLine, String LogName, Dictionary`2 EnvVars)
UATHelper: Packaging (Android (ATC)):    à AutomationTool.CommandUtils.RunUBT(CommandEnvironment Env, String UBTExecutable, FileReference Project, String Target, String Platform, String Config, String AdditionalArgs, String LogName, Dictionary`2 EnvVars)
UATHelper: Packaging (Android (ATC)):    à 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 (Android (ATC)):    à 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 InTargetToManifest)
UATHelper: Packaging (Android (ATC)):    à Project.Build(BuildCommand Command, ProjectParams Params, Int32 WorkingCL, ProjectBuildTargets TargetMask)
UATHelper: Packaging (Android (ATC)):    à BuildCookRun.DoBuildCookRun(ProjectParams Params)
UATHelper: Packaging (Android (ATC)):    à AutomationTool.BuildCommand.Execute()
UATHelper: Packaging (Android (ATC)):    à AutomationTool.Automation.Execute(List`1 CommandsToExecute, CaselessDictionary`1 Commands)
UATHelper: Packaging (Android (ATC)):    à AutomationTool.Automation.Process(String] Arguments)
UATHelper: Packaging (Android (ATC)):    à AutomationTool.Program.MainProc(Object Param)
UATHelper: Packaging (Android (ATC)):    à AutomationTool.InternalUtils.RunSingleInstance(Func`2 Main, Object Param)
UATHelper: Packaging (Android (ATC)):    à AutomationTool.Program.Main()
UATHelper: Packaging (Android (ATC)): Program.Main: AutomationTool exiting with ExitCode=5 (5)
UATHelper: Packaging (Android (ATC)): BUILD FAILED

Here are my settings:
SDk : android-24
ndk: r12b
JDK: 1.8.0_77
ANT: 1.8.2

Maybe it’s a bug from UE 4.14 ?
Thx for your help !

Same error here :confused: how can i solve it ? thx

I solved this (for me) by setting the target system to “android-21” :
APKPackaging

  • minimum SDK version : 21
  • target SDK : 21
    Android SDK :
  • SDK API Level : matchndk
  • NDK API Level : android-21

With the same settings than ProWakizashi (ndk: r12b, JDK: 1.8.0_77 and ANT: 1.8.2)
For 2 of them (ndk r12c and jdk 1.8), I had to install the 1R5 version of codeworks instead of the 1R4-2 as documented :slight_smile: