.netlinuxunreal-engine4unreal-engine5

Can't generate project files for UE5 on Linux


I pulled UE5 from source, finished Setup.sh, and when I run GenerateProjectFiles.sh, I keep getting this error:

./GenerateProjectFiles.sh
Attempting to set up UE pretty printers for gdb (existing UEPrinters.py, if any, will be overwritten)...
    updated UEPrinters.py
    found necessary entries in ~/.gdbinit file, not changing it.

Setting up Unreal Engine 5 project files...

Setting up bundled DotNet SDK
/mnt/Evo970/Work/Engine/UE_5.0/Engine/Binaries/ThirdParty/DotNet/Linux/sdk/3.1.401/NuGet.targets(255,5): error : Unable to load the service index for source https://api.nuget.org/v3/index.json. [/mnt/Evo970/Work/Engine/UE_5.0/Engine/Source/Programs/UnrealBuildTool/UnrealBuildTool.csproj]
/mnt/Evo970/Work/Engine/UE_5.0/Engine/Binaries/ThirdParty/DotNet/Linux/sdk/3.1.401/NuGet.targets(255,5): error :   The SSL connection could not be established, see inner exception. [/mnt/Evo970/Work/Engine/UE_5.0/Engine/Source/Programs/UnrealBuildTool/UnrealBuildTool.csproj]
/mnt/Evo970/Work/Engine/UE_5.0/Engine/Binaries/ThirdParty/DotNet/Linux/sdk/3.1.401/NuGet.targets(255,5): error :   The remote certificate is invalid according to the validation procedure. [/mnt/Evo970/Work/Engine/UE_5.0/Engine/Source/Programs/UnrealBuildTool/UnrealBuildTool.csproj]
GenerateProjectFiles ERROR: Failed to build UnrealBuildTool

I'm running on ArcoLinux, kernel 5.18.1-arch1-1, dotnet sdk and runtime installed, dotnet 3.0 from aur installed. Please help.


Solution

  • Running Arch, I encountered the same issue but managed to resolve it thanks to a fix I found in a YouTube comment (of all places!) by Ethorbit. I'll just paste the whole thing here.

    "Instead of running ./GenerateProjectFiles.sh and then make, run this instead:

    ./Engine/Build/BatchFiles/RunUAT.sh BuildGraph -target="Make Installed Build Linux" -script=Engine/Build/InstalledEngineBuild.xml -set:WithDDC=false -set:HostPlatformOnly=true
    

    If you are getting an ICU package error, you can either A: add this environment variable: export DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=1 or B: install the libicu50 package

    If you are getting SSL certificate errors, add these environment variables: "

    export SSL_CERT_FILE=/etc/ssl/certs/ca-certificates.crt
    
    export SSL_CERT_DIR=/dev/null
    

    I'm not certain it's necessary but if you encouter further errors, I also installed dotnet-host, dotnet-runtime, and dotnet-sdk just before things started to work.