Improbable Icon

SpatialOS Forums

Help Unreal Engine Build Worker Error

I tried building workers using BuildProject.bat in the UnrealGDKExample directory following the documentation until I came across this error. It says no build platform found for Linux even though i installed the Linux Toolchain. Help is appreciated.

Errors on Command Prompt:

Hi @Yasser-Noori

Just to confirm first of all, have you double checked all the other dependencies here and made sure you’re using the correct versions of everything?

Also, do you just have Visual Studio 2017 installed? Or do you have other versions installed as well?

Yes I followed the steps but I suspect the issue to be about the Linux Cross_Compiling tool chain Installation to be incorrectly configured, if you check the error it says something about the Linux Platform…

Thanks For The Help! Much appreciated.
Please Reply.

Could you run the following command from the command line just to check what Windows is seeing?

%LINUX_MULTIARCH_ROOT%x86_64-unknown-linux-gnu\bin\clang++ -v

This will return your version of the toolchain, which should be 7.0.1.

This is the result:

Here are some more errors:

MacPlatformFactory.RegisterBuildPlatforms: UnrealBuildTool.MacPlatformSDK using manually installed SDK
TVOSPlatformFactory.RegisterBuildPlatforms: UnrealBuildTool.IOSPlatformSDK using manually installed SDK
AndroidPlatformFactory.RegisterBuildPlatforms: UnrealBuildTool.AndroidPlatformSDK has no valid SDK
IOSPlatformFactory.RegisterBuildPlatforms: UnrealBuildTool.IOSPlatformSDK using manually installed SDK
HTML5PlatformFactory.RegisterBuildPlatforms: UnrealBuildTool.HTML5PlatformSDK using manually installed SDK
LinuxPlatformFactory.RegisterBuildPlatforms: UnrealBuildTool.LinuxPlatformSDK has no valid SDK
LuminPlatformSDK.HasAnySDK: *** Unable to determine MLSDK location ***
LuminPlatformSDK.HasAnySDK: *** Unable to determine MLSDK location ***
LuminPlatformFactory.RegisterBuildPlatforms: UnrealBuildTool.LuminPlatformSDK has no valid SDK
WindowsPlatformFactory.RegisterBuildPlatforms: UnrealBuildTool.WindowsPlatformSDK using manually installed SDK
BuildMode.Execute: Command line: “C:\Users\Noori\Downloads\unreal\UnrealEngine\Engine\Binaries\DotNET\UnrealBuildTool.exe” GDKShooterServer Linux Development -Project=C:\Users\Noori\Downloads\unreal\UnrealEngine\Samples\UnrealGDKExampleProject\Game\GDKShooter.uproject C:\Users\Noori\Downloads\unreal\UnrealEngine\Samples\UnrealGDKExampleProject\Game\GDKShooter.uproject -NoUBTMakefiles -remoteini=“C:\Users\Noori\Downloads\unreal\UnrealEngine\Samples\UnrealGDKExampleProject\Game” -skipdeploy -Manifest=C:\Users\Noori\Downloads\unreal\UnrealEngine\Engine\Intermediate\Build\Manifest.xml -NoHotReload -log=“C:\Users\Noori\Downloads\unreal\UnrealEngine\Engine\Programs\AutomationTool\Saved\Logs\UBT-GDKShooterServer-Linux-Development.txt”
UnrealBuildTool.Main: ERROR: GetBuildPlatform: No BuildPlatform found for Linux
UnrealBuildTool.Main: BuildException: GetBuildPlatform: No BuildPlatform found for Linux
UnrealBuildTool.Main: at UnrealBuildTool.UEBuildPlatform.GetBuildPlatform(UnrealTargetPlatform InPlatform, Boolean bInAllowFailure) in C:\Users\Noori\Downloads\unreal\UnrealEngine\Engine\Source\Programs\UnrealBuildTool\Configuration\UEBuildPlatform.cs:line 461
UnrealBuildTool.Main: at UnrealBuildTool.TargetDescriptor.ParseSingleCommandLine(CommandLineArguments Arguments, Boolean bUsePrecompiled, Boolean bSkipRulesCompile, List1 TargetDescriptors) in C:\Users\Noori\Downloads\unreal\UnrealEngine\Engine\Source\Programs\UnrealBuildTool\Configuration\TargetDescriptor.cs:line 277 UnrealBuildTool.Main: at UnrealBuildTool.TargetDescriptor.ParseCommandLine(CommandLineArguments Arguments, Boolean bUsePrecompiled, Boolean bSkipRulesCompile, List1 TargetDescriptors) in C:\Users\Noori\Downloads\unreal\UnrealEngine\Engine\Source\Programs\UnrealBuildTool\Configuration\TargetDescriptor.cs:line 174
UnrealBuildTool.Main: at UnrealBuildTool.BuildMode.Execute(CommandLineArguments Arguments) in C:\Users\Noori\Downloads\unreal\UnrealEngine\Engine\Source\Programs\UnrealBuildTool\Modes\BuildMode.cs:line 134
UnrealBuildTool.Main: at UnrealBuildTool.UnrealBuildTool.Main(String ArgumentsArray) in C:\Users\Noori\Downloads\unreal\UnrealEngine\Engine\Source\Programs\UnrealBuildTool\UnrealBuildTool.cs:line 443
Timeline.Print: Timeline:
Timeline.Print:
Timeline.Print: [ 0.000]
Timeline.Print: 0.012 FileMetadataPrefetch.QueueEngineDirectory()
Timeline.Print: 0.014 XmlConfig.ReadConfigFiles()
Timeline.Print: 0.045 SingleInstanceMutex.Acquire()
Timeline.Print: 0.045 UEBuildPlatform.RegisterPlatforms()
Timeline.Print: 0.046 0.000 Initializing InstalledPlatformInfo
Timeline.Print: 0.079 0.034 Querying types
Timeline.Print: 0.086 0.040 MacPlatformFactory
Timeline.Print: 0.116 0.070 TVOSPlatformFactory
Timeline.Print: 0.119 0.073 AndroidPlatformFactory
Timeline.Print: 0.127 0.082 IOSPlatformFactory
Timeline.Print: 0.128 0.082 HTML5PlatformFactory
Timeline.Print: 0.139 0.094 LinuxPlatformFactory
Timeline.Print: 0.142 0.096 LuminPlatformFactory
Timeline.Print: 0.143 0.098 WindowsPlatformFactory
Timeline.Print: 0.150 DeleteJunk()
Timeline.Print: 0.155 TargetDescriptor.ParseCommandLine()
Timeline.Print: 0.168
Timeline.Print: 0.245 FileMetadataPrefetch.Stop()
Timeline.Print: [ 0.248]

If the problem was with the toolchain installation, could you send me a video tutorial on how to install it please? The improbable tutorial is the one I followed but was not very specific and outdated.

Ah, well that error would definitely explain why you can’t build the Linux workers.

The toolchain you want is on this page:
https://docs.unrealengine.com/en-US/Platforms/Linux/GettingStarted/index.html

Be sure to download -v13 clang-7.0.1-based for Unreal 4.22.

It should just be a simple installer that handles the rest for you.

Give that a try and see if it makes any difference (and maybe try rebooting your machine after install just to be safe). If that doesn’t help then we can look into this further.

Still doesn’t work after a reboot.

Error:

Hi @Yasser-Noori

It sounds like your environment variable isn’t being set correctly when you install the toolchain.

If I could just ask you to follow these steps to check the environment variable:

  1. Open Run on the start menu and enter sysdm.cpl to open the system properties menu.
  2. From there, go to the ‘Advanced’ tab and click ‘Environment Variables’.
  3. In the new window, in the ‘System Variables’ list, scroll down until you see LINUX_MULTIARCH_ROOT and ensure the path value here matches the path you installed the toolchain to.

If you used the default install path then this pair should read:
LINUX_MULTIARCH_ROOT C:\UnrealToolchains\v13_clang-7.0.1-centos7\

In your case it appears you installed the toolchain to the root C:\ drive though so I would expect it to read:
LINUX_MULTIARCH_ROOT C:\v13_clang-7.0.1-centos7\

I fixed the variables and now it showing me this:
I’m going to try to run the build and see what happens.