Packaging with Online Subsystem Steam does not work

I want to integrate Steamworks in my project (4.15) and have try many methods and times of days here. The online subsystem works perfectly in standalone. But it’s easy to create a package. If I deactivate the online Steam subsystem with plugins, the packaging will work fine again.

I’ve tried that, for example

and that

Same problem in blank project, but not in a newer version. In 4.18 the substem works fine in a blank project. But my game project is not compatible witz 4.18

UATHelper: Packaging (Windows (64-bit)): Project.Build: ********** BUILD COMMAND STARTED **********
UATHelper: Packaging (Windows (64-bit)): CommandUtils.Run: Run: C:\Program Files\Epic Games\UE_4.15\Engine\Binaries\DotNET\UnrealBuildTool.exe TheyHaveHORNS Win64 Shipping -Project=C:\TheyHaveHORNS\TheyHaveHORNS.uproject -clean C:\TheyHaveHORNS\TheyHaveHORNS.uproject -remoteini=“C:\TheyHaveHORNS” -nobuilduht -NoHotReload
LogSlate: Took 0.000926 seconds to synchronously load lazily loaded font ‘…/…/…/Engine/Content/Editor/Slate/Fonts/DroidSansMono.ttf’ (77K)
UATHelper: Packaging (Windows (64-bit)): CommandUtils.Run: Run: Took 1,422791s to run UnrealBuildTool.exe, ExitCode=0
UATHelper: Packaging (Windows (64-bit)): CommandUtils.Run: Run: C:\Program Files\Epic Games\UE_4.15\Engine\Binaries\DotNET\UnrealBuildTool.exe TheyHaveHORNS Win64 Shipping -Project=C:\TheyHaveHORNS\TheyHaveHORNS.uproject C:\TheyHaveHORNS\TheyHaveHORNS.uproject -remoteini=“C:\TheyHaveHORNS” -noxge -generatemanifest -NoHotReload -ignorejunk
UATHelper: Packaging (Windows (64-bit)): CommandUtils.Run: Run: Took 1,1435459s to run UnrealBuildTool.exe, ExitCode=0
UATHelper: Packaging (Windows (64-bit)): CommandUtils.Run: Run: C:\Program Files\Epic Games\UE_4.15\Engine\Binaries\DotNET\UnrealBuildTool.exe TheyHaveHORNS Win64 Shipping -Project=C:\TheyHaveHORNS\TheyHaveHORNS.uproject C:\TheyHaveHORNS\TheyHaveHORNS.uproject -remoteini=“C:\TheyHaveHORNS” -noxge -NoHotReload -ignorejunk
UATHelper: Packaging (Windows (64-bit)): UnrealBuildTool: Creating makefile for TheyHaveHORNS (no existing makefile)
UATHelper: Packaging (Windows (64-bit)): UnrealBuildTool: Performing full C++ include scan (no include cache file)
UATHelper: Packaging (Windows (64-bit)): UnrealBuildTool: Performing 3 actions (2 in parallel)
UATHelper: Packaging (Windows (64-bit)): UnrealBuildTool: PCH.UELinkerFixups.cpp
UATHelper: Packaging (Windows (64-bit)): UnrealBuildTool: UELinkerFixups.cpp
UATHelper: Packaging (Windows (64-bit)): UnrealBuildTool: [3/3] Link TheyHaveHORNS-Win64-Shipping.exe
UATHelper: Packaging (Windows (64-bit)): UnrealBuildTool: Bibliothek “C:\TheyHaveHORNS\Binaries\Win64\TheyHaveHORNS-Win64-Shipping.lib” und Objekt “C:\TheyHaveHORNS\Binaries\Win64\TheyHaveHORNS-Win64-Shipping.exp” werden erstellt.
UATHelper: Packaging (Windows (64-bit)): UnrealBuildTool: UE4-OnlineSubsystemSteam-Win64-Shipping.lib(Module.OnlineSubsystemSteam.cpp.obj) : error LNK2019: Verweis auf nicht aufgel�stes externes Symbol “__imp_SteamUser” in Funktion ““public: __cdecl FOnlineFriendsSteam::FOnlineFriendsSteam(class FOnlineSubsystemSteam *)” (??0FOnlineFriendsSteam@@QEAA@PEAVFOn
lineSubsystemSteam@@@Z)”.
UATHelper: Packaging (Windows (64-bit)): UnrealBuildTool: UE4-OnlineSubsystemSteam-Win64-Shipping.lib(Module.OnlineSubsystemSteam.cpp.obj) : error LNK2019: Verweis auf nicht aufgel�stes externes Symbol “__imp_SteamFriends” in Funktion ““public: __cdecl FOnlineFriendsSteam::FOnlineFriendsSteam(class FOnlineSubsystemSteam *)” (??0FOnlineFriendsSteam@@QEAA@PEAV
FOnlineSubsystemSteam@@@Z)”.
UATHelper: Packaging (Windows (64-bit)): UnrealBuildTool: UE4-OnlineSubsystemSteam-Win64-Shipping.lib(Module.OnlineSubsystemSteam.cpp.obj) : error LNK2019: Verweis auf nicht aufgel�stes externes Symbol “__imp_SteamUtils” in Funktion ““public: bool __cdecl FOnlineSubsystemSteam::InitSteamworksClient(bool,int)” (?InitSteamworksClient@FOnlineSubsystemSteam@@QEA
A_N_NH@Z)”.
UATHelper: Packaging (Windows (64-bit)): UnrealBuildTool: UE4-OnlineSubsystemSteam-Win64-Shipping.lib(Module.OnlineSubsystemSteam.cpp.obj) : error LNK2019: Verweis auf nicht aufgel�stes externes Symbol “__imp_SteamMatchmaking” in Funktion ““public: __cdecl FOnlineAsyncTaskSteamFindLobby::FOnlineAsyncTaskSteamFindLobby(class FOnlineSubsystemSteam *,class FUni
queNetIdSteam const &,class TSharedPtr const &,int,class TMulticastDelegate,class FOnlineSessionSearchResult const &> const &)” (??0FOnlineAsyncTaskSteamFindLobby@@QEAA@PEAVFOnlineSubsystemSteam@@AEBVFUniqueNetIdSteam@@AEBV?$TSharedPtr@VFOnlineSessionSearc
h@@$0A@@@HAEBV?$TMulticastDelegate@X$$CB_N$$CBHV?$TSharedPtr@$$CBVFUniqueNetId@@$0A@@@AEBVFOnlineSessionSearchResult@@@@@Z)”.
UATHelper: Packaging (Windows (64-bit)): UnrealBuildTool: UE4-OnlineSubsystemSteam-Win64-Shipping.lib(Module.OnlineSubsystemSteam.cpp.obj) : error LNK2019: Verweis auf nicht aufgel�stes externes Symbol “__imp_SteamUserStats” in Funktion ““public: void __cdecl FOnlineLeaderboardsSteam::CacheCurrentUsersStats(void)” (?CacheCurrentUsersStats@FOnlineLeaderboards
Steam@@QEAAXXZ)”.
UATHelper: Packaging (Windows (64-bit)): UnrealBuildTool: UE4-OnlineSubsystemSteam-Win64-Shipping.lib(Module.OnlineSubsystemSteam.cpp.obj) : error LNK2019: Verweis auf nicht aufgel�stes externes Symbol “__imp_SteamApps” in Funktion ““public: bool __cdecl FOnlineSubsystemSteam::InitSteamworksClient(bool,int)” (?InitSteamworksClient@FOnlineSubsystemSteam@@QEAA
_N_NH@Z)”.
UATHelper: Packaging (Windows (64-bit)): UnrealBuildTool: UE4-OnlineSubsystemSteam-Win64-Shipping.lib(Module.OnlineSubsystemSteam.cpp.obj) : error LNK2019: Verweis auf nicht aufgel�stes externes Symbol “__imp_SteamNetworking” in Funktion ““public: virtual class FSocket * __cdecl FSocketSubsystemSteam::CreateSocket(class FName const &,class FString const &,bo
ol)” (?CreateSocket@FSocketSubsystemSteam@@UEAAPEAVFSocket@@AEBVFName@@AEBVFString@@_N@Z)”.
UATHelper: Packaging (Windows (64-bit)): UnrealBuildTool: UE4-OnlineSubsystemSteam-Win64-Shipping.lib(Module.OnlineSubsystemSteam.cpp.obj) : error LNK2019: Verweis auf nicht aufgel�stes externes Symbol “__imp_SteamMatchmakingServers” in Funktion ““public: void __cdecl FPendingSearchResultSteam::CancelQuery(void)” (?CancelQuery@FPendingSearchResultSteam@@QEAA
XXZ)”.
UATHelper: Packaging (Windows (64-bit)): UnrealBuildTool: UE4-OnlineSubsystemSteam-Win64-Shipping.lib(Module.OnlineSubsystemSteam.cpp.obj) : error LNK2019: Verweis auf nicht aufgel�stes externes Symbol “__imp_SteamRemoteStorage” in Funktion ““public: virtual void __cdecl FOnlineUserCloudSteam::DumpCloudFileState(class FUniqueNetId const &,class FString const
&)” (?DumpCloudFileState@FOnlineUserCloudSteam@@UEAAXAEBVFUniqueNetId@@AEBVFString@@@Z)”.
UATHelper: Packaging (Windows (64-bit)): UnrealBuildTool: UE4-OnlineSubsystemSteam-Win64-Shipping.lib(Module.OnlineSubsystemSteam.cpp.obj) : error LNK2019: Verweis auf nicht aufgel�stes externes Symbol “__imp_SteamGameServer_Init” in Funktion ““public: bool __cdecl FOnlineSubsystemSteam::InitSteamworksServer(void)” (?InitSteamworksServer@FOnlineSubsystemStea
m@@QEAA_NXZ)”.
UATHelper: Packaging (Windows (64-bit)): UnrealBuildTool: UE4-OnlineSubsystemSteam-Win64-Shipping.lib(Module.OnlineSubsystemSteam.cpp.obj) : error LNK2019: Verweis auf nicht aufgel�stes externes Symbol “__imp_SteamGameServer” in Funktion ““public: virtual void __cdecl FOnlineAsyncTaskSteamCreateServer::Finalize(void)” (?Finalize@FOnlineAsyncTaskSteamCreateSe
rver@@UEAAXXZ)”.
UATHelper: Packaging (Windows (64-bit)): UnrealBuildTool: UE4-OnlineSubsystemSteam-Win64-Shipping.lib(Module.OnlineSubsystemSteam.cpp.obj) : error LNK2019: Verweis auf nicht aufgel�stes externes Symbol “__imp_SteamGameServerUtils” in Funktion ““public: bool __cdecl FOnlineSubsystemSteam::InitSteamworksServer(void)” (?InitSteamworksServer@FOnlineSubsystemStea
m@@QEAA_NXZ)”.
UATHelper: Packaging (Windows (64-bit)): UnrealBuildTool: UE4-OnlineSubsystemSteam-Win64-Shipping.lib(Module.OnlineSubsystemSteam.cpp.obj) : error LNK2019: Verweis auf nicht aufgel�stes externes Symbol “__imp_SteamGameServerNetworking” in Funktion ““public: virtual class FSocket * __cdecl FSocketSubsystemSteam::CreateSocket(class FName const &,class FString
const &,bool)” (?CreateSocket@FSocketSubsystemSteam@@UEAAPEAVFSocket@@AEBVFName@@AEBVFString@@_N@Z)”.
UATHelper: Packaging (Windows (64-bit)): UnrealBuildTool: UE4-OnlineSubsystemSteam-Win64-Shipping.lib(Module.OnlineSubsystemSteam.cpp.obj) : error LNK2019: Verweis auf nicht aufgel�stes externes Symbol “__imp_SteamGameServerStats” in Funktion ““public: bool __cdecl FOnlineSubsystemSteam::InitSteamworksServer(void)” (?InitSteamworksServer@FOnlineSubsystemStea
m@@QEAA_NXZ)”.
UATHelper: Packaging (Windows (64-bit)): UnrealBuildTool: C:\TheyHaveHORNS\Binaries\Win64\TheyHaveHORNS-Win64-Shipping.exe : fatal error LNK1120: 14 nicht aufgel�ste Externe
UATHelper: Packaging (Windows (64-bit)): UnrealBuildTool: ERROR: UBT ERROR: Failed to produce item: C:\TheyHaveHORNS\Binaries\Win64\TheyHaveHORNS-Win64-Shipping.exe
UATHelper: Packaging (Windows (64-bit)): UnrealBuildTool: Total build time: 9,92 seconds (Local executor: 0,00 seconds)
UATHelper: Packaging (Windows (64-bit)): CommandUtils.Run: Run: Took 10,2883717s to run UnrealBuildTool.exe, ExitCode=5
UATHelper: Packaging (Windows (64-bit)): Program.Main: ERROR: AutomationTool terminated with exception: AutomationTool.CommandUtils+CommandFailedException: Command failed (Result:5): C:\Program Files\Epic Games\UE_4.15\Engine\Binaries\DotNET\UnrealBuildTool.exe TheyHaveHORNS Win64 Shipping -Project=C:\TheyHaveHORNS\TheyHaveHORNS.uproject C:\TheyHaveHORNS\Th
eyHaveHORNS.uproject -remoteini=“C:\TheyHaveHORNS” -noxge -NoHotReload -ignorejunk. See logfile for details: ‘UnrealBuildTool-2018.01.02-23.23.10.txt’
UATHelper: Packaging (Windows (64-bit)): bei AutomationTool.CommandUtils.RunAndLog(String App, String CommandLine, String Logfile, Int32 MaxSuccessCode, String Input, ERunOptions Options, Dictionary2 EnvVars, SpewFilterCallbackType SpewFilterCallback) UATHelper: Packaging (Windows (64-bit)): bei AutomationTool.CommandUtils.RunAndLog(CommandEnvironment Env, String App, String CommandLine, String LogName, Int32 MaxSuccessCode, String Input, ERunOptions Options, Dictionary2 EnvVars, SpewFilterCallbackType SpewFilterCallback)
UATHelper: Packaging (Windows (64-bit)): bei AutomationTool.CommandUtils.RunUBT(CommandEnvironment Env, String UBTExecutable, String CommandLine, String LogName, Dictionary2 EnvVars) UATHelper: Packaging (Windows (64-bit)): bei AutomationTool.CommandUtils.RunUBT(CommandEnvironment Env, String UBTExecutable, FileReference Project, String Target, String Platform, String Config, String AdditionalArgs, String LogName, Dictionary2 EnvVars)
UATHelper: Packaging (Windows (64-bit)): bei 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, Dictionary2 EnvVars) UATHelper: Packaging (Windows (64-bit)): bei AutomationTool.UE4Build.Build(BuildAgenda Agenda, Nullable1 InDeleteBuildProducts, Boolean InUpdateVersionFiles, Boolean InForceNoXGE, Boolean InUseParallelExecutor, Boolean InForceNonUnity, Boolean InForceUnity, Boolean InShowProgress, Dictionary2 PlatformEnvVars, Nullable1 InChangelistNumberOverride, Dicti
onary2 InTargetToManifest) UATHelper: Packaging (Windows (64-bit)): bei Project.Build(BuildCommand Command, ProjectParams Params, Int32 WorkingCL, ProjectBuildTargets TargetMask) UATHelper: Packaging (Windows (64-bit)): bei BuildCookRun.DoBuildCookRun(ProjectParams Params) UATHelper: Packaging (Windows (64-bit)): bei BuildCookRun.ExecuteBuild() UATHelper: Packaging (Windows (64-bit)): bei AutomationTool.BuildCommand.Execute() UATHelper: Packaging (Windows (64-bit)): bei AutomationTool.Automation.Execute(List1 CommandsToExecute, CaselessDictionary1 Commands) UATHelper: Packaging (Windows (64-bit)): bei AutomationTool.Automation.Process(String[] Arguments) UATHelper: Packaging (Windows (64-bit)): bei AutomationTool.Program.MainProc(Object Param) UATHelper: Packaging (Windows (64-bit)): bei AutomationTool.InternalUtils.RunSingleInstance(Func2 Main, Object Param)
UATHelper: Packaging (Windows (64-bit)): bei AutomationTool.Program.Main()
UATHelper: Packaging (Windows (64-bit)): Program.Main: AutomationTool exiting with ExitCode=5 (5)
UATHelper: Packaging (Windows (64-bit)): BUILD FAILED
PackagingResults:Error: Error Unknown Error

After days of trying and failing, it finally works. Unfortunately, I can not say exactly what the problem was. I solved it by verifying the engine in the epic launcher.

For me, this was caused by replacing Steamworks SDK in the Engine/ThirdParty/Steamworks directory. I believe ever since UE 4.7, you don’t have to manually download the Steamworks SDK. Once I verified the engine from the launcher, the old files were restored and I could package without any issues.