Impossible to compile and cook a game using BuildGraph with an installed build

Hello,

I tried to use BuildGraph to compile and cook our game.

I created that very simple XML file, based on what’s in the shooter game:

<?xml version='1.0' ?>
<BuildGraph xmlns="http://www.epicgames.com/BuildGraph" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.epicgames.com/BuildGraph ../../../../Engine/Build/Graph/Schema.xsd" >

	<Option Name="OutputDir" DefaultValue="$(RootDir)/LocalBuilds" Description="Output directory for packaged builds"/>

	<Option Name="WithClientForWin64" Restrict="true|false" DefaultValue="true" Description="Include client for the Win64 target platform"/>

	<ForEach Name="AgentPlatform" Values="Win64">

		<Agent Name="OurGame Editor $(AgentPlatform)" Type="Compile$(AgentPlatform);$(AgentPlatform)">
			<Node Name="Compile OurGameEditor $(AgentPlatform)">
				<Compile Target="OurGameEditor" Platform="$(AgentPlatform)" Configuration="Development" Arguments="-Project=&quot;F:/Projects/OurGame/OurGame.uproject&quot;"/>
			</Node>
		</Agent>

		<Property Name="ClientPlatforms" Value=""/>
		<Switch>
			<Case If="$(AgentPlatform) == 'Win64'">
				<Property Name="ClientPlatforms" Value="$(ClientPlatforms)Win64;" If="$(WithClientForWin64)"/>
			</Case>
		</Switch>

		<Agent Name="Compile OurGame Clients ($(AgentPlatform))" Type="Compile$(AgentPlatform);$(AgentPlatform)">
			<ForEach Name="ClientPlatform" Values="$(ClientPlatforms)">
				<Node Name="Compile OurGame $(ClientPlatform)">
					<Compile Target="OurGame" Platform="$(ClientPlatform)" Configuration="Development" Arguments="-Project=&quot;F:/Projects/OurGame/OurGame.uproject&quot;" />
				</Node>
			</ForEach>
		</Agent>

		<Agent Name="Package OurGame Clients ($(AgentPlatform))" Type="$(AgentPlatform)">
			<ForEach Name="ClientPlatform" Values="$(ClientPlatforms)">
                <Property Name="CookFlavor" Value=""/>
                <Property Name="CookFlavor" Value="ETC2" If="$(ClientPlatform) == 'Android'"/>
                <Node Name="Package OurGame $(ClientPlatform)" Requires="Compile OurGameEditor $(AgentPlatform);Compile OurGame $(ClientPlatform)">        
					<Command Name="BuildCookRun" Arguments="-Project=&quot;F:/Projects/OurGame/OurGame.uproject&quot; -SkipBuild -Cook -Stage -Pak -Package -Platform=$(ClientPlatform) -CookFlavor=$(CookFlavor) -Client -ClientConfig=Development -Archive -ArchiveDirectory=&quot;$(OutputDir)&quot;"/>
				</Node>
			</ForEach>
		</Agent>
	</ForEach>

	<Aggregate Name="Package OurGame" Requires="Package OurGame Clients (Win64);"/>
</BuildGraph>

Then I run that graph using that command line:

F:/UE4Installed/Engine/Build/BatchFiles/RunUAT.bat BuildGraph -target="Package OurGame" -script="F:/Projects/OurGame/Build/OurGameBuild.xml"

I have the following output and error:

Running AutomationTool...
C:\Program Files (x86)\MSBuild\14.0\bin\Microsoft.Common.CurrentVersion.targets(1611,5): warning : The referenced project '..\IOS\MobileDeviceInterface\MobileDeviceInterface.csproj' does not exist. [F:\Projects\ConsoleDev\UE4Inst
alled2\Engine\Source\Programs\AutomationTool\AutomationTool.csproj]
Parsing command line: BuildGraph -target="Package OurGame" -script=F:/Projects/OurGame/Build/OurGameBuild.xml -compile
Compiling scripts.
    DotNETUtilities -> F:\Projects\ConsoleDev\UE4Installed2\Engine\Binaries\DotNET\DotNETUtilities.dll
    UnrealBuildTool -> F:\Projects\ConsoleDev\UE4Installed2\Engine\Binaries\DotNET\UnrealBuildTool.exe
    AutomationUtils.Automation -> F:\Projects\ConsoleDev\UE4Installed2\Engine\Binaries\DotNET\AutomationUtils.Automation.dll
    AllDesktop.Automation -> F:\Projects\ConsoleDev\UE4Installed2\Engine\Binaries\DotNET\AutomationScripts\AllDesktop\AllDesktop.Automation.dll
    Localization.Automation -> F:\Projects\ConsoleDev\UE4Installed2\Engine\Binaries\DotNET\AutomationScripts\Localization.Automation.dll
    OneSkyLocalization.Automation -> F:\Projects\ConsoleDev\UE4Installed2\Engine\Binaries\DotNET\AutomationScripts\OneSkyLocalization.Automation.dll
    AutomationScripts.Automation -> F:\Projects\ConsoleDev\UE4Installed2\Engine\Binaries\DotNET\AutomationScripts\AutomationScripts.Automation.dll
    Android.Automation -> F:\Projects\ConsoleDev\UE4Installed2\Engine\Binaries\DotNET\AutomationScripts\Android\Android.Automation.dll
    BuildGraph.Automation -> F:\Projects\ConsoleDev\UE4Installed2\Engine\Binaries\DotNET\AutomationScripts\BuildGraph.Automation.dll
    HTML5.Automation -> F:\Projects\ConsoleDev\UE4Installed2\Engine\Binaries\DotNET\AutomationScripts\HTML5\HTML5.Automation.dll
  C:\Program Files (x86)\MSBuild\14.0\bin\Microsoft.Common.CurrentVersion.targets(1611,5): warning : The referenced project '..\..\IOS\MobileDeviceInterface\MobileDeviceInterface.csproj' does not exist. [F:\Projects\ConsoleDev\UE4Installed2\Engine\Source\Programs\AutomationTool\IOS\IOS.Automation.csproj]
    IOS.Automation -> F:\Projects\ConsoleDev\UE4Installed2\Engine\Binaries\DotNET\AutomationScripts\IOS\IOS.Automation.dll
    Linux.Automation -> F:\Projects\ConsoleDev\UE4Installed2\Engine\Binaries\DotNET\AutomationScripts\Linux\Linux.Automation.dll
    Mac.Automation -> F:\Projects\ConsoleDev\UE4Installed2\Engine\Binaries\DotNET\AutomationScripts\Mac\Mac.Automation.dll
    PS4.Automation -> F:\Projects\ConsoleDev\UE4Installed2\Engine\Binaries\DotNET\AutomationScripts\PS4\PS4.Automation.dll
    Switch.Automation -> F:\Projects\ConsoleDev\UE4Installed2\Engine\Binaries\DotNET\AutomationScripts\Switch\Switch.Automation.dll
    TVOS.Automation -> F:\Projects\ConsoleDev\UE4Installed2\Engine\Binaries\DotNET\AutomationScripts\TVOS\TVOS.Automation.dll
    Win.Automation -> F:\Projects\ConsoleDev\UE4Installed2\Engine\Binaries\DotNET\AutomationScripts\Win.Automation.dll
    XBoxOne.Automation -> F:\Projects\ConsoleDev\UE4Installed2\Engine\Binaries\DotNET\AutomationScripts\XboxOne\XBoxOne.Automation.dll
    XLocLocalization.Automation -> F:\Projects\ConsoleDev\UE4Installed2\Engine\Binaries\DotNET\AutomationScripts\XLocLocalization.Automation.dll
Took 0.884348s to run MSBuild.exe, ExitCode=0
****** [1/3] Compile OurGameEditor Win64

Running: C:\Program Files (x86)\MSBuild\14.0\bin\MSBuild.exe F:/Projects/ConsoleDev/UE4Installed2/Engine/Source/Programs/UnrealBuildTool/UnrealBuildTool.csproj /verbosity:minimal /nologo /target:Rebuild /property:Configuration=Development /property:Platform=AnyCPU
    DotNETUtilities -> F:\Projects\ConsoleDev\UE4Installed2\Engine\Binaries\DotNET\DotNETUtilities.dll
    UnrealBuildTool -> F:\Projects\ConsoleDev\UE4Installed2\Engine\Binaries\DotNET\UnrealBuildTool.exe
Took 0.8858603s to run MSBuild.exe, ExitCode=0
Running: F:\Projects\ConsoleDev\UE4Installed2\Engine\Binaries\DotNET\UnrealBuildTool.exe OurGameEditor Win64 Development -generatemanifest -nobuilduht -xgeexport -NoUBTMakefiles -nobuilduht -Project="F:/Projects/OurGame/OurGame.uproject" -NoHotReload
  Using 'git status' to determine working set for adaptive non-unity build.
  XGEEXPORT: Exported 'F:\Projects\ConsoleDev\UE4Installed2\Engine\Intermediate\Build\UBTExport.000.xge.xml'
Took 7.1617232s to run UnrealBuildTool.exe, ExitCode=0
ERROR: BUILD FAILED UBT Manifest F:\Projects\ConsoleDev\UE4Installed2\Engine\Intermediate\Build\Manifest.xml does not exist.
       while executing <Compile Target="OurGameEditor" Configuration="Development" Platform="Win64" Arguments="-Project=&quot;F:/Projects/OurGame/OurGame.uproject&quot;" AllowParallelExecutor="True" />
       at F:\Projects\OurGame\Build\OurGameBuild.xml(13)
       (see F:\Projects\ConsoleDev\UE4Installed2\Engine\Programs\AutomationTool\Saved\Logs\UAT_Log.txt for full exception trace)
AutomationTool exiting with ExitCode=1 (Error_Unknown)
BUILD FAILED

As you can see the unreal build tool fails to find a Manifest.xml file.

I tried to add AllowXGE=“false” to the compile tasks but with no success.

I also ran the same command but against a compiled engine (from the sources) and it works well.

Is there a limitation in BuildGraph to make it useable only from the sources of the engine?

Hello,

We’ve recently made a switch to a new bug reporting method using a more structured form. Please visit the link below for more details and report the issue using the new Bug Submission Form. Feel free to continue to use this thread for community discussion around the issue.

https://forums.unrealengine.com/unreal-engine/announcements-and-releases/1410408-unreal-engine-bug-submission-form

Thanks

OK I’ll post the issue over there