Having a rough issue updating an Unreal 5.3 project to 5.4, when trying to build source.
Build Error:
|Error|MSB3073| The command D:\Applications\UE_5.4\Engine\Build\BatchFiles\Build.bat TheProjectEditor Win64 Development -Project=D:\GameDev\Unreal 5 P4 Workspaces\sam_TheProject\TheProject\TheProject.uproject -WaitMutex -FromMsBuild -architecture=x64 exited with code 6.|TheProject|C:\Program Files\Microsoft Visual Studio\2022\Professional\MSBuild\Microsoft\VC\v170\Microsoft.MakeFile.Targets|44|||
I’ve tried:
Uninstalling/Reinstalling VS2022 with default recommendations from UE Forums. VS2019 is NOT installed.
Trying variations on the individual components. Game Dev w/ C++ Installed. Desktop dev with C++ installed. .net desktop dev installed. MSVC v143 14.38, 14.36, 14.34, latest installed. No v142 components installed.
Tried updating .vsconfig from “Microsoft.VisualStudio.Component.Windows10SDK.22621”, to “Microsoft.VisualStudio.Component.Windows11SDK.22621”,
Tried deleting BuildConfiguration.xml from AppData before regenerating VS files.
Many regenerations after deleting .vs folder, .vsconfig, .sln and intermediate folders.
Updated AdvancedSessionsPlugin to 5.4.
I’m at a loss. Worked in 5.3 and just won’t using same config in 5.4 (seemingly).
If I remember correctly you also have to modify the target files
example
// Copyright Epic Games, Inc. All Rights Reserved.
using UnrealBuildTool;
using System.Collections.Generic;
public class LineWarsMaxTarget : TargetRules
{
public LineWarsMaxTarget(TargetInfo Target) : base(Target)
{
Type = TargetType.Game;
DefaultBuildSettings = BuildSettingsVersion.V5;
IncludeOrderVersion = EngineIncludeOrderVersion.Unreal5_4;
ExtraModuleNames.Add("LineWarsMax");
}
}
where IncludeOrderVersion can decide if your project compiles correctly.
You can try testing it with
// Fill out your copyright notice in the Description page of Project Settings.
using UnrealBuildTool;
using System.Collections.Generic;
public class TheProjectTarget : TargetRules
{
public TheProjectTarget(TargetInfo Target) : base(Target)
{
Type = TargetType.Game;
DefaultBuildSettings = BuildSettingsVersion.V2;
bLegacyParentIncludePaths = false;
CppStandard = CppStandardVersion.Default;
WindowsPlatform.bStrictConformanceMode = true;
bValidateFormatStrings = true;
IncludeOrderVersion = EngineIncludeOrderVersion.Latest;
ExtraModuleNames.AddRange( new string[] { "TheProject" } );
//bUseSteam = true;
}
}
Ok I do have some differences, notably BuildSettingsVersion.V2 and EngineIncludeOrderVersion.Latest. I tried quickly with
“EngineIncludeOrderVersion.Unreal5_3” and “EngineIncludeOrderVersion.Unreal5_4” but same issue. I didn’t regenerate files though perhaps I should.
A fellow dev is running the project on 5.4 fine and made sure live coding is off, which is the commit/version I have pulled down…so I’m assuming its something local with me.
Here is the full output:
Build started at 6:30 PM...
1>------ Build started: Project: EpicGames.UBA, Configuration: Development Any CPU ------
2>------ Build started: Project: EpicGames.Oodle, Configuration: Development Any CPU ------
3>------ Build started: Project: EpicGames.OIDC, Configuration: Development Any CPU ------
4>------ Build started: Project: EpicGames.Core, Configuration: Development Any CPU ------
1>EpicGames.UBA -> D:\Applications\UE_5.4\Engine\Source\Programs\Shared\EpicGames.UBA\bin\Development\net6.0\EpicGames.UBA.dll
4>EpicGames.Core -> D:\Applications\UE_5.4\Engine\Source\Programs\Shared\EpicGames.Core\bin\Development\net6.0\EpicGames.Core.dll
5>------ Build started: Project: EpicGames.MsBuild, Configuration: Development Any CPU ------
6>------ Build started: Project: EpicGames.IoHash, Configuration: Development Any CPU ------
3>EpicGames.OIDC -> D:\Applications\UE_5.4\Engine\Source\Programs\Shared\EpicGames.OIDC\bin\Development\net6.0\EpicGames.OIDC.dll
2>EpicGames.Oodle -> D:\Applications\UE_5.4\Engine\Source\Programs\Shared\EpicGames.Oodle\bin\Development\net6.0\EpicGames.Oodle.dll
6>EpicGames.IoHash -> D:\Applications\UE_5.4\Engine\Source\Programs\Shared\EpicGames.IoHash\bin\Development\net6.0\EpicGames.IoHash.dll
7>------ Build started: Project: EpicGames.Serialization, Configuration: Development Any CPU ------
7>EpicGames.Serialization -> D:\Applications\UE_5.4\Engine\Source\Programs\Shared\EpicGames.Serialization\bin\Development\net6.0\EpicGames.Serialization.dll
8>------ Build started: Project: EpicGames.Horde, Configuration: Development Any CPU ------
5>EpicGames.MsBuild -> D:\Applications\UE_5.4\Engine\Source\Programs\Shared\EpicGames.MsBuild\bin\Development\net6.0\EpicGames.MsBuild.dll
9>------ Build started: Project: EpicGames.Build, Configuration: Development Any CPU ------
9>EpicGames.Build -> D:\Applications\UE_5.4\Engine\Source\Programs\Shared\EpicGames.Build\bin\Development\net6.0\EpicGames.Build.dll
8>EpicGames.Horde -> D:\Applications\UE_5.4\Engine\Source\Programs\Shared\EpicGames.Horde\bin\Development\net6.0\EpicGames.Horde.dll
10>------ Build started: Project: EpicGames.UHT, Configuration: Development Any CPU ------
10>EpicGames.UHT -> D:\Applications\UE_5.4\Engine\Source\Programs\Shared\EpicGames.UHT\bin\Development\net6.0\EpicGames.UHT.dll
11>------ Build started: Project: UnrealBuildTool, Configuration: Development Any CPU ------
11>UnrealBuildTool -> D:\Applications\UE_5.4\Engine\Binaries\DotNET\UnrealBuildTool\UnrealBuildTool.dll
12>------ Build started: Project: TheProject, Configuration: Development_Editor x64 ------
12>Using bundled DotNet SDK version: 6.0.302
12>Running UnrealBuildTool: dotnet "..\..\Engine\Binaries\DotNET\UnrealBuildTool\UnrealBuildTool.dll" TheProjectEditor Win64 Development -Project="D:\GameDev\Unreal 5 P4 Workspaces\sam_TheProject\TheProject\TheProject.uproject" -WaitMutex -FromMsBuild -architecture=x64
12>Log file: C:\Users\sam\AppData\Local\UnrealBuildTool\Log.txt
12>Creating makefile for TheProjectEditor (no existing makefile)
12>Parsing headers for TheProjectEditor
12> Running Internal UnrealHeaderTool "D:\GameDev\Unreal 5 P4 Workspaces\sam_TheProject\TheProject\TheProject.uproject" "D:\GameDev\Unreal 5 P4 Workspaces\sam_TheProject\TheProject\Intermediate\Build\Win64\TheProjectEditor\Development\AdventGuardEditor.uhtmanifest" -WarningsAsErrors -installed
12>Total of 4 written
12>Reflection code generated for TheProjectEditor in 1.6079684 seconds
12>Total execution time: 4.73 seconds
12>The following output paths are longer than 260 characters. Please move the engine to a directory with a shorter path.
12>[260 characters] D:\GameDev\Unreal 5 P4 Workspaces\sam_TheProject\TheProject\Plugins\AdvancedSessionsPlugin\AdvancedSessions\AdvancedSteamSessions\Intermediate\Build\Win64\x64\UnrealEditor\Development\AdvancedSteamSessions\SteamRequestGroupOfficersCallbackProxy.cpp.dep.json
12>C:\Program Files\Microsoft Visual Studio\2022\Professional\MSBuild\Microsoft\VC\v170\Microsoft.MakeFile.Targets(44,5): error MSB3073: The command "D:\Applications\UE_5.4\Engine\Build\BatchFiles\Build.bat TheProjectEditor Win64 Development -Project="D:\GameDev\Unreal 5 P4 Workspaces\sam_TheProject\TheProject\TheProject.uproject" -WaitMutex -FromMsBuild -architecture=x64" exited with code 6.
12>Done building project "TheProject.vcxproj" -- FAILED.
========== Build: 11 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
========== Build completed at 6:31 PM and took 08.477 seconds ==========
The original path was under 260 characters which the warning was telling me it was over…so that really isn’t making sense to me…that and why is the path an issue in 5.4 but not 5.3…BUT its working and compiling now. Thank you 3dRaven.