[Mono-ue] Build Error

Michael Hutchinson m.j.hutchinson at gmail.com
Wed Mar 11 16:04:25 UTC 2015


Yup, looks like the issues is spaces in the path.

According to the comments on
https://msdn.microsoft.com/en-us/library/windows/desktop/aa381055%28v=vs.85%29.aspx,
/d doesn't allow spaces in values.

Looks like I'll have to figure out another way to pass those values
in. In the meantime, moving the engine checkout to a directory without
spaces in the path should work.

-m

On 11 March 2015 at 10:48, Ryan Burnham <nitro52 at iinet.net.au> wrote:
> So I managed to find the main method of the UnrealBuildTool in UnrealBuildTool.cs and output its arguments. It's using these
>
> UE4Editor Win64 Development -DEPLOY
>
> So I ran the debugger with them and think I found when it calls RC. It seems to do it on multiple threads. It looks like the arguments being using for one of the failed ones is below. I can't see anything obviously wrong (I added new lines for readability)
>
> /nologo
> /d _WIN64 /l 0x409
> /i "E:\Source Control\UnrealEngine\Engine\Source"
> /i "E:\Source Control\UnrealEngine\Engine\Plugins\XamarinUE4\MonoRuntime\Source"
> /i "E:\Source Control\UnrealEngine\Engine\Plugins\XamarinUE4\MonoRuntime\Source\MonoRuntime/Private"
> /i "../Plugins/XamarinUE4/MonoRuntime/Source/MonoRuntime/Classes/"
> /i "../Intermediate/Build/Win64/Inc/Plugins/MonoRuntime/"
> /i "../Plugins/XamarinUE4/MonoRuntime/Source/MonoRuntime/Public/"
> /i "Runtime/Core/Public"
> /i "Runtime/Core/Public/Internationalization"
> /i "Runtime/Core/Public/Async"
> /i "Runtime/Core/Public/Concurrency"
> /i "Runtime/Core/Public/Containers"
> /i "Runtime/Core/Public/Delegates"
> /i "Runtime/Core/Public/GenericPlatform"
> /i "Runtime/Core/Public/HAL"
> /i "Runtime/Core/Public/Math"
> /i "Runtime/Core/Public/Misc"
> /i "Runtime/Core/Public/Modules"
> /i "Runtime/Core/Public/Modules/Boilerplate"
> /i "Runtime/Core/Public/ProfilingDebugging"
> /i "Runtime/Core/Public/Serialization"
> /i "Runtime/Core/Public/Serialization/Json"
> /i "Runtime/Core/Public/Stats"
> /i "Runtime/Core/Public/Templates"
> /i "Runtime/Core/Public/UObject"
> /i "Runtime/Core/Public/Windows"
> /i "Runtime/Core"
> /i "Runtime/CoreUObject/Classes/"
> /i "../Intermediate/Build/Win64/Inc/CoreUObject/"
> /i "Runtime/CoreUObject/Public/"
> /i "Runtime/CoreUObject/Public/Blueprint"
> /i "Runtime/CoreUObject/Public/Misc"
> /i "Runtime/CoreUObject/Public/Serialization"
> /i "Runtime/CoreUObject/Public/Templates"
> /i "Runtime/CoreUObject/Public/UObject"
> /i "Runtime/CoreUObject"
> /i "Runtime/Engine/Classes/"
> /i "../Intermediate/Build/Win64/Inc/Engine/"
> /i "Runtime/Engine/Public/"
> /i "Runtime/Engine/Public/AI"
> /i "Runtime/Engine/Public/Features"
> /i "Runtime/Engine/Public/Landscape"
> /i "Runtime/Engine/Public/Net"
> /i "Runtime/Engine/Public/Slate"
> /i "Runtime/Engine/Public/Tests"
> /i "../Intermediate/Build/Win64/Inc/Slate/"
> /i "Runtime/Slate/Public/"
> /i "Runtime/Slate/Public/Framework"
> /i "Runtime/Slate/Public/Widgets"
> /i "Runtime/Slate/Public/Framework/Application"
> /i "Runtime/Slate/Public/Framework/Commands"
> /i "Runtime/Slate/Public/Framework/Docking"
> /i "Runtime/Slate/Public/Framework/Layout"
> /i "Runtime/Slate/Public/Framework/MultiBox"
> /i "Runtime/Slate/Public/Framework/Notifications"
> /i "Runtime/Slate/Public/Framework/Styling"
> /i "Runtime/Slate/Public/Framework/Text"
> /i "Runtime/Slate/Public/Framework/Views"
> /i "Runtime/Slate/Public/Framework/Text/Android"
> /i "Runtime/Slate/Public/Framework/Text/IOS"
> /i "Runtime/Slate/Public/Widgets/Colors"
> /i "Runtime/Slate/Public/Widgets/Docking"
> /i "Runtime/Slate/Public/Widgets/Images"
> /i "Runtime/Slate/Public/Widgets/Input"
> /i "Runtime/Slate/Public/Widgets/Layout"
> /i "Runtime/Slate/Public/Widgets/Navigation"
> /i "Runtime/Slate/Public/Widgets/Notifications"
> /i "Runtime/Slate/Public/Widgets/Testing"
> /i "Runtime/Slate/Public/Widgets/Text"
> /i "Runtime/Slate/Public/Widgets/Tutorials"
> /i "Runtime/Slate/Public/Widgets/Views"
> /i "Runtime/InputCore/Classes/"
> /i "../Intermediate/Build/Win64/Inc/InputCore/"
> /i "Runtime/InputCore/Public/"
> /i "Runtime/InputCore"
> /i "../Intermediate/Build/Win64/Inc/SlateCore/"
> /i "Runtime/SlateCore/Public/"
> /i "Runtime/SlateCore/Public/Animation"
> /i "Runtime/SlateCore/Public/Application"
> /i "Runtime/SlateCore/Public/Brushes"
> /i "Runtime/SlateCore/Public/Fonts"
> /i "Runtime/SlateCore/Public/Input"
> /i "Runtime/SlateCore/Public/Layout"
> /i "Runtime/SlateCore/Public/Logging"
> /i "Runtime/SlateCore/Public/Rendering"
> /i "Runtime/SlateCore/Public/Sound"
> /i "Runtime/SlateCore/Public/Styling"
> /i "Runtime/SlateCore/Public/Textures"
> /i "Runtime/SlateCore/Public/Types"
> /i "Runtime/SlateCore/Public/Widgets"
> /i "Runtime/SlateCore"
> /i "Runtime/Slate"
> /i "../Intermediate/Build/Win64/Inc/Messaging/"
> /i "Runtime/Messaging/Public/"
> /i "Runtime/Messaging/Public/Common"
> /i "Runtime/Messaging/Public/Interfaces"
> /i "Runtime/Messaging"
> /i "../Intermediate/Build/Win64/Inc/RenderCore/"
> /i "Runtime/RenderCore/Public/"
> /i "Runtime/RenderCore"
> /i "../Intermediate/Build/Win64/Inc/RHI/"
> /i "Runtime/RHI/Public/"
> /i "Runtime/RHI"
> /i "../Intermediate/Build/Win64/Inc/ShaderCore/"
> /i "Runtime/ShaderCore/Public/"
> /i "Runtime/ShaderCore"
> /i "../Intermediate/Build/Win64/Inc/AssetRegistry/"
> /i "Runtime/AssetRegistry/Public/"
> /i "Runtime/AssetRegistry"
> /i "Runtime/EngineMessages/Classes/"
> /i "../Intermediate/Build/Win64/Inc/EngineMessages/"
> /i "Runtime/EngineMessages/Public/"
> /i "Runtime/EngineMessages"
> /i "Runtime/EngineSettings/Classes/"
> /i "../Intermediate/Build/Win64/Inc/EngineSettings/"
> /i "Runtime/EngineSettings/Public/"
> /i "Runtime/EngineSettings"
> /i "../Intermediate/Build/Win64/Inc/SynthBenchmark/"
> /i "Developer/SynthBenchmark/Public/"
> /i "../Intermediate/Build/Win64/Inc/Renderer/"
> /i "Runtime/Renderer/Public/"
> /i "Runtime/Renderer"
> /i "Developer/SynthBenchmark"
> /i "Runtime/AIModule/Public"
> /i "Runtime/AIModule/Classes/"
> /i "../Intermediate/Build/Win64/Inc/AIModule/"
> /i "Runtime/AIModule/Public/"
> /i "Developer/GameplayDebugger/Public"
> /i "Developer/GameplayDebugger/Classes/"
> /i "../Intermediate/Build/Win64/Inc/GameplayDebugger/"
> /i "Developer/GameplayDebugger/Public/"
> /i "Developer/GameplayDebugger"
> /i "Runtime/AIModule"
> /i "Programs/UnrealLightmass/Public"
> /i "Editor/UnrealEd/Classes/"
> /i "../Intermediate/Build/Win64/Inc/UnrealEd/"
> /i "Editor/UnrealEd/Public/"
> /i "Editor/UnrealEd/Public/Commandlets"
> /i "Editor/UnrealEd/Public/Dialogs"
> /i "Editor/UnrealEd/Public/DragAndDrop"
> /i "Editor/UnrealEd/Public/Features"
> /i "Editor/UnrealEd/Public/Kismet2"
> /i "Editor/UnrealEd/Public/Layers"
> /i "Editor/UnrealEd/Public/Tests"
> /i "Editor/UnrealEd/Public/Toolkits"
> /i "../Intermediate/Build/Win64/Inc/BspMode/"
> /i "Editor/BspMode/Public/"
> /i "Editor/BspMode"
> /i "../Intermediate/Build/Win64/Inc/Documentation/"
> /i "Editor/Documentation/Public/"
> /i "Editor/Documentation"
> /i "../Intermediate/Build/Win64/Inc/Projects/"
> /i "Runtime/Projects/Public/"
> /i "Runtime/Projects/Public/Interfaces"
> /i "Runtime/Projects"
> /i "../Intermediate/Build/Win64/Inc/SandboxFile/"
> /i "Runtime/SandboxFile/Public/"
> /i "Runtime/SandboxFile"
> /i "../Intermediate/Build/Win64/Inc/EditorStyle/"
> /i "Editor/EditorStyle/Public/"
> /i "Editor/EditorStyle/Public/Classes"
> /i "Editor/EditorStyle/Public/Interfaces"
> /i "Editor/EditorStyle"
> /i "../Intermediate/Build/Win64/Inc/SourceControl/"
> /i "Developer/SourceControl/Public/"
> /i "Developer/SourceControl"
> /i "Editor/UnrealEdMessages/Classes/"
> /i "../Intermediate/Build/Win64/Inc/UnrealEdMessages/"
> /i "Editor/UnrealEdMessages/Public/"
> /i "Editor/UnrealEdMessages"
> /i "Editor/BlueprintGraph/Classes/"
> /i "../Intermediate/Build/Win64/Inc/BlueprintGraph/"
> /i "Editor/BlueprintGraph/Public/"
> /i "Editor/BlueprintGraph"
> /i "../Intermediate/Build/Win64/Inc/XAudio2/"
> /i "Runtime/Windows/XAudio2/Public/"
> /i "Runtime/Windows/XAudio2"
> /i "../Intermediate/Build/Win64/Inc/UserFeedback/"
> /i "Editor/UserFeedback/Public/"
> /i "Editor/UserFeedback"
> /i "../Intermediate/Build/Win64/Inc/CollectionManager/"
> /i "Developer/CollectionManager/Public/"
> /i "Developer/CollectionManager"
> /i "Editor/UnrealEd"
> /i "Editor/Kismet/Classes/"
> /i "../Intermediate/Build/Win64/Inc/Kismet/"
> /i "Editor/Kismet/Public/"
> /i "Editor/Kismet/Public/WorkflowOrientedApp"
> /i "Editor/Kismet"
> /i "Runtime/Engine"
> /i "../Plugins/XamarinUE4/MonoRuntime/Source/MonoRuntime"
> /i "../Intermediate/Build/Win64/Inc/DesktopPlatform/"
> /i "Developer/DesktopPlatform/Public/"
> /i "Developer/DesktopPlatform"
> /i "../Plugins/XamarinUE4/MonoRuntime/Source/ThirdParty/mono/"
> /d "UE_EDITOR=1"
> /d "IS_PROGRAM=0"
> /d "UE_ROCKET=0"
> /d "UNICODE"
> /d "_UNICODE"
> /d "__UNREAL__"
> /d "IS_MONOLITHIC=0"
> /d "WITH_ENGINE=1"
> /d "WITH_UNREAL_DEVELOPER_TOOLS=1"
> /d "WITH_COREUOBJECT=1"
> /d "USE_STATS_WITHOUT_ENGINE=0"
> /d "WITH_PLUGIN_SUPPORT=0"
> /d "USE_LOGGING_IN_SHIPPING=0"
> /d "UE_BUILD_MINIMAL=0"
> /d "WITH_EDITOR=1"
> /d "WITH_SERVER_CODE=1"
> /d "UBT_COMPILED_PLATFORM=Win64"
> /d "WIN32=1"
> /d "_WIN32_WINNT=0x0600"
> /d "WINVER=0x0600"
> /d "PLATFORM_WINDOWS=1"
> /d "NDEBUG=1"
> /d "UE_BUILD_DEVELOPMENT=1"
> /d "ORIGINAL_FILE_NAME="UE4Editor-MonoRuntime.dll""
> /d "MONORUNTIME_API=DLLEXPORT"
> /d "UE_ENABLE_ICU=1"
> /d "WITH_STEAMWORKS/=0"
> /d "WITH_VS_PERF_PROFILER=1"
> /d "WITH_DIRECTXMATH=0"
> /d "CORE_API=DLLIMPORT"
> /d "COREUOBJECT_API=DLLIMPORT"
> /d "WITH_PHYSX=1"
> /d "WITH_APEX=1"
> /d "WITH_BOX2D=1"
> /d "WITH_RECAST=1"
> /d "ENGINE_API=DLLIMPORT"
> /d "WITH_FREETYPE=1"
> /d "SLATE_API=DLLIMPORT"
> /d "INPUTCORE_API=DLLIMPORT"
> /d "WITH_FREETYPE=1"
> /d "SLATECORE_API=DLLIMPORT"
> /d "MESSAGING_API=DLLIMPORT"
> /d "RENDERCORE_API=DLLIMPORT"
> /d "RHI_API=DLLIMPORT"
> /d "SHADERCORE_API=DLLIMPORT"
> /d "ASSETREGISTRY_API=DLLIMPORT"
> /d "ENGINEMESSAGES_API=DLLIMPORT"
> /d "ENGINESETTINGS_API=DLLIMPORT"
> /d "SYNTHBENCHMARK_API=DLLIMPORT"
> /d "RENDERER_API="
> /d "WITH_RECAST=1"
> /d "AIMODULE_API=DLLIMPORT"
> /d "GAMEPLAYDEBUGGER_API=DLLIMPORT"
> /d "WITH_PHYSX=1"
> /d "WITH_APEX=1"
> /d "WITH_RECAST=1"
> /d "UNREALED_API=DLLIMPORT"
> /d "BSPMODE_API=DLLIMPORT"
> /d "DOCUMENTATION_API=DLLIMPORT"
> /d "PROJECTS_API=DLLIMPORT"
> /d "SANDBOXFILE_API=DLLIMPORT"
> /d "EDITORSTYLE_API=DLLIMPORT"
> /d "SOURCECONTROL_API=DLLIMPORT"
> /d "UNREALEDMESSAGES_API=DLLIMPORT"
> /d "BLUEPRINTGRAPH_API=DLLIMPORT"
> /d "XAUDIO2_API=DLLIMPORT"
> /d "USERFEEDBACK_API="
> /d "COLLECTIONMANAGER_API="
> /d "KISMET_API=DLLIMPORT"
> /d "DESKTOPPLATFORM_API=DLLIMPORT"
> /d "MONO_FRAMEWORK_DIR#"E:\\Source Control\\UnrealEngine\\Engine\\Plugins\\XamarinUE4\\Mono\\Win64\\lib\\mono\\4.5\\..\\..\\..\\lib\\mono\\4.5""
> /d "MONO_DYNAMIC_LIB_NAMES#"monosgen-2.0.dll""
> /d "MONO_DYNAMIC_LIB_DEV_PATHS#"E:\\Source Control\\UnrealEngine\\Engine\\Plugins\\XamarinUE4\\Mono\\Win64\\lib\\mono\\4.5\\..\\..\\..\\bin\\monosgen-2.0.dll""
> /d "MONO_IS_DYNAMIC_LIB=1" /fo "E:\Source Control\UnrealEngine\Engine\Intermediate\Build\Win64\UE4Editor\Development\Plugins\Dynamic\MonoRuntime\ModuleVersionResource.rc.inl.res" "E:\Source Control\UnrealEngine\Engine\Source\Runtime\Core\Resources\Windows\ModuleVersionResource.rc.inl"
>
>
>
>
> -----Original Message-----
> From: Michael Hutchinson [mailto:m.j.hutchinson at gmail.com]
> Sent: Wednesday, 11 March 2015 7:51 AM
> To: Ryan Burnham
> Cc: Robert Vissers; mono-ue
> Subject: Re: [Mono-ue] Build Error
>
> rc.exe is the MS resource compiler. It looks like it doesn't like some of the arguments we're passing it via UBT. My guess is that it's the string constants we're passing in via the Defines list (see MonoRuntime/Source/ThirdParty/mono/EmbeddedMono.Build.cs), since C++ compilers (and related tools) tend to be pretty finicky about those.
> Maybe some characters in your path are breaking the escaping or something.
>
> In the latter case, the missing overrides, it looks like you haven't applied the engine patchset.
>
> - m
>
>
> On 10 March 2015 at 19:33, Ryan Burnham <nitro52 at iinet.net.au> wrote:
>> Yeah I suspect the issue is with the CompileAction.CommandArguments.
>> It build a large list of CompileActions. Each have the same
>> CompileAction.CommandPath which looks like it’s the C++ compiler. I
>> tried outputting the CommandArguments but each one has a huge list of
>> arguments. I couldn’t find where it actually uses CompileAction to
>> execute RC so I could stick some error handling around the failing
>> one. I’m not sure how to debug the UnrealBuildTool without knowing what command line arguments it is using.
>>
>>
>>
>> I rolled back 2 commits and got a different build error, so I’m not
>> sure if it started there. I was defiantly able to build before, I
>> think it was preview 4
>>
>> Error      1              error CS0115:
>> 'UnrealBuildTool.Plugin.Rules.MonoRuntime.PreBuildTarget(UnrealBuildTo
>> ol.UEBuildTarget,
>> System.Collections.Generic.List<UnrealBuildTool.FileItem>)': no suitable
>> method found to override       e:\Source
>> Control\UnrealEngine\Engine\Plugins\XamarinUE4\MonoRuntime\Source\MonoRuntime\MonoRuntime.Plugin.cs
>> 378         38           UE4
>>
>>
>>
>> From: mono-ue-bounces at lists.ximian.com
>> [mailto:mono-ue-bounces at lists.ximian.com] On Behalf Of Robert Vissers
>> Sent: Tuesday, 10 March 2015 6:54 AM
>> To: mono-ue at lists.ximian.com
>> Subject: [Mono-ue] Build Error
>>
>>
>>
>> I have the same build error on 2 of my PC’s. I got it to work on one
>> other for some reason. I have no idea what the difference is. All
>> VS2013, even one without update 4 (failed).
>>
>>
>>
>> CompileAction.CommandPath output is quite useless, is there some way
>> to trace what the actual arguments are at the moment of failure? It
>> compiles the RC list before executing it, making it quite hard to
>> guess. Especially when it is running in parallel.
>>
>>
>> _______________________________________________
>> Mono-ue mailing list
>> Mono-ue at lists.ximian.com
>> http://lists.ximian.com/mailman/listinfo/mono-ue
>>
>
>
>
> --
> ~ https://mhut.ch
>



-- 
~ https://mhut.ch


More information about the Mono-ue mailing list