UE4 installation on Linux fails

So I’ve been following this tutorial on how to set up UE4 on Linux:

I’ve made it to step 3 and am encountering some issues.

I am using Ubuntu 18.04 for this and I’ve tried UE versions 4.21 and 4.19.

I’ve cloned the repository from github and ran Setup.sh with success.

However, running GenerateProjectFiles.sh generates multiple Warnings, here’s an example:

WARNING: Exception while generating
include data for UE4Editor:
System.ComponentModel.Win32Exception:
ApplicationName=‘/home/user/UnrealEngine/Engine/Extras/ThirdPartyNotUE/SDKs/HostLinux/Linux_x64/v12_clang-6.0.1-centos7/x86_64-unknown-linux-gnu/bin/clang++’,
CommandLine=’ --version’,
CurrentDirectory=‘’, Native error=
Cannot find the specified file
at System.Diagnostics.Process.Start_noshell
(System.Diagnostics.ProcessStartInfo
startInfo, System.Diagnostics.Process
process) [0x00000] in unknown>:0
at System.Diagnostics.Process.Start_common
(System.Diagnostics.ProcessStartInfo
startInfo, System.Diagnostics.Process
process) [0x00000] in unknown>:0
at System.Diagnostics.Process.Start ()
[0x00000] in :0
at (wrapper remoting-invoke-with-check)
System.Diagnostics.Process:Start ()
at UnrealBuildTool.LinuxToolChain.DetermineCompilerVersion
() [0x00000] in :0
at UnrealBuildTool.LinuxToolChain…ctor
(System.String InArchitecture,
UnrealBuildTool.LinuxPlatformSDK
InSDK, Boolean InPreservePSYM,
LinuxToolChainOptions InOptions)
[0x00000] in :0
at UnrealBuildTool.LinuxPlatform.CreateToolChain
(CppPlatform CppPlatform,
UnrealBuildTool.ReadOnlyTargetRules
Target) [0x00000] in unknown>:0
at UnrealBuildTool.UEBuildTarget.CreateToolchain
(CppPlatform CppPlatform) [0x00000] in
:0
at UnrealBuildTool.UEBuildTarget.Build
(UnrealBuildTool.BuildConfiguration
BuildConfiguration,
UnrealBuildTool.CPPHeaders Headers,
System.Collections.Generic.List1 OutputItems, System.Collections.Generic.List1
UObjectModules, ISourceFileWorkingSet
WorkingSet,
UnrealBuildTool.ActionGraph
ActionGraph, EHotReload HotReload,
Boolean bIsAssemblingBuild) [0x00000]
in :0
at UnrealBuildTool.UnrealBuildTool.RunUBT
(UnrealBuildTool.BuildConfiguration
BuildConfiguration, System.String
Arguments,
Tools.DotNETCommon.FileReference
ProjectFile, Boolean bCatchExceptions)
[0x00000] in :0

Then, running the make command generates this error:

ERROR:
System.ComponentModel.Win32Exception:
ApplicationName=‘/home/user/UnrealEngine/Engine/Extras/ThirdPartyNotUE/SDKs/HostLinux/Linux_x64/v12_clang-6.0.1-centos7/x86_64-unknown-linux-gnu/bin/clang++’,
CommandLine=’ --version’,
CurrentDirectory=‘’, Native error=
Cannot find the specified file
at System.Diagnostics.Process.Start_noshell
(System.Diagnostics.ProcessStartInfo
startInfo, System.Diagnostics.Process
process) [0x00000] in unknown>:0
at System.Diagnostics.Process.Start_common
(System.Diagnostics.ProcessStartInfo
startInfo, System.Diagnostics.Process
process) [0x00000] in unknown>:0
at System.Diagnostics.Process.Start ()
[0x00000] in :0
at (wrapper remoting-invoke-with-check)
System.Diagnostics.Process:Start ()
at UnrealBuildTool.LinuxToolChain.DetermineCompilerVersion
() [0x00000] in :0
at UnrealBuildTool.LinuxToolChain…ctor
(System.String InArchitecture,
UnrealBuildTool.LinuxPlatformSDK
InSDK, Boolean InPreservePSYM,
LinuxToolChainOptions InOptions)
[0x00000] in :0
at UnrealBuildTool.LinuxPlatform.CreateToolChain
(CppPlatform CppPlatform,
UnrealBuildTool.ReadOnlyTargetRules
Target) [0x00000] in unknown>:0
at UnrealBuildTool.UEBuildTarget.CreateToolchain
(CppPlatform CppPlatform) [0x00000] in
:0
at UnrealBuildTool.UEBuildTarget.Build
(UnrealBuildTool.BuildConfiguration
BuildConfiguration,
UnrealBuildTool.CPPHeaders Headers,
System.Collections.Generic.List1 OutputItems, System.Collections.Generic.List1
UObjectModules, ISourceFileWorkingSet
WorkingSet,
UnrealBuildTool.ActionGraph
ActionGraph, EHotReload HotReload,
Boolean bIsAssemblingBuild) [0x00000]
in :0
at UnrealBuildTool.UnrealBuildTool.RunUBT
(UnrealBuildTool.BuildConfiguration
BuildConfiguration, System.String
Arguments,
Tools.DotNETCommon.FileReference
ProjectFile, Boolean bCatchExceptions)
[0x00000] in :0
(see …/Programs/UnrealBuildTool/Log.txt
for full exception trace)
Makefile:197: recipe for target
‘CrashReportClient-Linux-Shipping’
failed make: ***
[CrashReportClient-Linux-Shipping]
Error 5

Sorry, my English is not good, use Google Translate.
The reason is that after running Setup.sh, only the source code of clang is downloaded (I guess, because there is no binary in the directory, we only have a bunch of source code).
The documentation has a compiled clang, just download it and replace it.

1、download http://cdn.unrealengine.com/CrossToolchain_Linux/v12_clang-6.0.1-centos7.zip
2、unzip
3、rm -rf /home/user/UnrealEngine/Engine/Extras/ThirdPartyNotUE/SDKs/HostLinux/Linux_x64/v12_clang-6.0.1-centos7
4、mv v12_clang-6.0.1-centos7 /home/user/UnrealEngine/Engine/Extras/ThirdPartyNotUE/SDKs/HostLinux/Linux_x64/
5、make

This worked for me! Thanks a lot!