proletariatgames / unreal.hx

Unreal.hx: Haxe Integration for Unreal
MIT License
424 stars 43 forks source link

Errors in externs causing initial build to fail #130

Closed StatiS closed 4 years ago

StatiS commented 5 years ago

Attempting to build on a fresh 4.21.2, c++ project produces the following output:

4>Parsing headers for Haxe421Editor
4>  Running UnrealHeaderTool "C:\Users\jb2709\Documents\UnrealProjects\Haxe421\Haxe421.uproject" "C:\Users\jb2709\Documents\UnrealProjects\Haxe421\Intermediate\Build\Win64\Haxe421Editor\Development\Haxe421Editor.uhtmanifest" -LogCmds="loginit warning, logexit warning, logdatabase error" -Unattended -WarningsAsErrors -installed
4>Reflection code generated for Haxe421Editor in 27,0291798 seconds
4>Building 26 actions with 8 processes...
4>  [1/26] SharedPCH.UnrealEd.cpp
4>  [2/26] Haxe421.init.gen.cpp
4>  [3/26] CallHelper.gen.cpp
4>  [4/26] HaxeGcRef.gen.cpp
4>  [5/26] Haxe421GameModeBase.gen.cpp
4>  [6/26] SlateCore.Win-Dev-Editor.uhxglue.cpp
4>  [7/26] Slate.Win-Dev-Editor.uhxglue.cpp
4>  [8/26] OnlineSubsystem.Win-Dev-Editor.uhxglue.cpp
4>  [9/26] Projects.Win-Dev-Editor.uhxglue.cpp
4>  [10/26] UnrealEd.Win-Dev-Editor.uhxglue.cpp
4>  [11/26] InputCore.Win-Dev-Editor.uhxglue.cpp
4>  [12/26] Haxe421.Win-Dev-Editor.uhxglue.cpp
4>  [13/26] AudioPlatformConfiguration.Win-Dev-Editor.uhxglue.cpp
4>  [14/26] ClothingSystemRuntimeInterface.Win-Dev-Editor.uhxglue.cpp
4>  [15/26] Haxe421GameModeBase.cpp
4>  [16/26] Haxe421.cpp
4>  [17/26] AssetRegistry.Win-Dev-Editor.uhxglue.cpp
4>  [18/26] BlueprintGraph.Win-Dev-Editor.uhxglue.cpp
4>  [19/26] HaxeGeneratedClass.gen.cpp
4>  [20/26] HaxeRuntime.Win-Dev-Editor.uhxglue.cpp
4>  [21/26] MovieScene.Win-Dev-Editor.uhxglue.cpp
4>  [22/26] NetworkReplayStreaming.Win-Dev-Editor.uhxglue.cpp
4>  [23/26] UMG.Win-Dev-Editor.uhxglue.cpp
4>  [24/26] Unreal.Win-Dev-Editor.uhxglue.cpp
4>C:/Users/jb2709/Documents/UnrealProjects/Haxe421/Intermediate/Haxe/Haxe421-Win-Development-Editor/Generated/Private/uhx/glues/FInputKeyEventArgs_Glue.cpp(25): error C2065: 'FInputKeyEventArgs': undeclared identifier
4>C:/Users/jb2709/Documents/UnrealProjects/Haxe421/Intermediate/Haxe/Haxe421-Win-Development-Editor/Generated/Private/uhx/glues/FInputKeyEventArgs_Glue.cpp(25): error C2923: 'uhx::StructHelper': 'FInputKeyEventArgs' is not a valid template type argument for parameter 'T'
4>C:\Users\jb2709\Documents\UnrealProjects\Haxe421\Intermediate\Haxe\Haxe421-Win-Development-Editor\Template\Public\uhx/Wrapper.h(33): error C2955: 'std::is_abstract': use of class template requires template argument list
4>  C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.21.27702\INCLUDE\type_traits(584): note: see declaration of 'std::is_abstract'
4>C:\Users\jb2709\Documents\UnrealProjects\Haxe421\Intermediate\Haxe\Haxe421-Win-Development-Editor\Template\Public\uhx/Wrapper.h(58): error C2955: 'uhx::TStructKind': use of class template requires template argument list
4>  C:\Users\jb2709\Documents\UnrealProjects\Haxe421\Intermediate\Haxe\Haxe421-Win-Development-Editor\Template\Public\uhx/Wrapper.h(34): note: see declaration of 'uhx::TStructKind'
4>C:/Users/jb2709/Documents/UnrealProjects/Haxe421/Intermediate/Haxe/Haxe421-Win-Development-Editor/Generated/Private/uhx/glues/FInputKeyEventArgs_Glue.cpp(25): error C2955: 'uhx::StructHelper': use of class template requires template argument list
4>  C:\Users\jb2709\Documents\UnrealProjects\Haxe421\Intermediate\Haxe\Haxe421-Win-Development-Editor\Template\Public\uhx/Wrapper.h(59): note: see declaration of 'uhx::StructHelper'
4>C:/Users/jb2709/Documents/UnrealProjects/Haxe421/Intermediate/Haxe/Haxe421-Win-Development-Editor/Generated/Private/uhx/glues/FInputKeyEventArgs_Glue.cpp(25): error C2059: syntax error: ','
4>C:/Users/jb2709/Documents/UnrealProjects/Haxe421/Intermediate/Haxe/Haxe421-Win-Development-Editor/Generated/Private/uhx/glues/FViewportClient_Glue.cpp(23): error C2065: 'FInputKeyEventArgs': undeclared identifier
4>C:/Users/jb2709/Documents/UnrealProjects/Haxe421/Intermediate/Haxe/Haxe421-Win-Development-Editor/Generated/Private/uhx/glues/FViewportClient_Glue.cpp(23): error C2923: 'uhx::StructHelper': 'FInputKeyEventArgs' is not a valid template type argument for parameter 'T'
4>C:/Users/jb2709/Documents/UnrealProjects/Haxe421/Intermediate/Haxe/Haxe421-Win-Development-Editor/Generated/Private/uhx/glues/FViewportClient_Glue.cpp(23): error C2955: 'uhx::StructHelper': use of class template requires template argument list
4>  C:\Users\jb2709\Documents\UnrealProjects\Haxe421\Intermediate\Haxe\Haxe421-Win-Development-Editor\Template\Public\uhx/Wrapper.h(59): note: see declaration of 'uhx::StructHelper'
4>C:/Users/jb2709/Documents/UnrealProjects/Haxe421/Intermediate/Haxe/Haxe421-Win-Development-Editor/Generated/Private/uhx/glues/FViewportClient_Glue.cpp(23): error C2660: 'FViewportClient::InputKey': function does not take 1 arguments
4>  C:\Games\UnrealEngine\UE_4.21\Engine\Source\Runtime\Engine\Public\UnrealClient.h(755): note: see declaration of 'FViewportClient::InputKey'
4>UnrealBuildTool : error : UBT ERROR: Failed to produce item: C:\Users\jb2709\Documents\UnrealProjects\Haxe421\Binaries\Win64\UE4Editor-Haxe421.pdb
4>                        (see ../Programs/UnrealBuildTool/Log.txt for full exception trace)
4>Total build time: 648,78 seconds (Parallel executor: 0,00 seconds)
4>C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\VC\VCTargets\Microsoft.MakeFile.Targets(44,5): error MSB3075: The command "C:\Games\UnrealEngine\UE_4.21\Engine\Build\BatchFiles\Build.bat Haxe421Editor Win64 Development "C:\Users\jb2709\Documents\UnrealProjects\Haxe421\Haxe421.uproject" -WaitMutex -FromMsBuild" exited with code 5. Please verify that you have sufficient rights to run this command.
4>Done building project "Haxe421.vcxproj" -- FAILED.

Hopefully, its just me doing something wrong, any help would be greatly appreciated!

datee commented 5 years ago

You're not doing it wrong :) Actually - the current externs has an error : (this has been present for a while i belive).

Its an easy fix however - just delete the following files from the plugindir:

Haxe/Externs/Common/unreal/FInputKeyEventArgs.hx Haxe/Externs/Common/unreal/FInputKeyEventArgs_Extra.hx Haxe/Externs/Common/unreal/FViewportClient_Extra.hx

After this - the dev branch for 4.21 should build with no problems!

Im using my own fork of unreal.hx but I guess this should be fixed here too! :)

StatiS commented 5 years ago

Awesome, that fixed it for me, thank you!

Gonna leave this issue open for other newbies like me that might run into this to see, until its fixed in the dev branch.