You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Linux下源码编译UE5运行GenerateProjectFiles.sh报错无法生成项目文件

UE5 Linux端GenerateProjectFiles.sh SSL证书报错排查方案

问题复现场景

在ArcoLinux发行版(内核版本5.18.1-arch1-1)环境下,从源码拉取UE5.0代码、执行完Setup.sh脚本后,运行./GenerateProjectFiles.sh持续抛出如下错误:

./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

本地已安装系统级dotnet sdk与运行时,同时从AUR安装了dotnet 3.0版本。

问题根因

UE5.0自带的第三方DotNet 3.1.401 SDK默认不会主动读取Arch/ArcoLinux系统的CA证书存储,系统升级ca-certificates组件后,自带SDK内置的根证书列表与系统不匹配、部分证书过期,导致拉取NuGet源依赖时SSL证书校验失败,无法编译UnrealBuildTool。

修复步骤

按优先级依次尝试以下方案:

  • 优先使用系统已安装的DotNet SDK跳过自带旧版本,执行脚本前先导出环境变量:
cd /mnt/Evo970/Work/Engine/UE_5.0
export UE_USE_SYSTEM_DOTNET=1
./GenerateProjectFiles.sh

执行前可以先跑dotnet --list-sdks确认系统已安装3.1+版本的SDK,兼容UE5.0的构建要求。

  • 如果上述操作仍报证书错误,追加指定系统CA证书路径的环境变量再执行:
cd /mnt/Evo970/Work/Engine/UE_5.0
export UE_USE_SYSTEM_DOTNET=1
export SSL_CERT_FILE=/etc/ssl/certs/ca-certificates.crt
./GenerateProjectFiles.sh
  • 若必须使用UE自带的DotNet SDK,手动为自带SDK同步系统CA证书:
# 进入UE自带DotNet的根目录
cd /mnt/Evo970/Work/Engine/UE_5.0/Engine/Binaries/ThirdParty/DotNet/Linux/
# 清理旧证书,同步系统根证书
./dotnet dev-certs https --clean
export DOTNET_ROOT=$(pwd)
$DOTNET_ROOT/dotnet tool install -g dotnet-certificate-tool
~/.dotnet/tools/certificate-tool add --file /etc/ssl/certs/ca-certificates.crt

完成后回到引擎根目录重新执行生成脚本即可。

  • 若本地网络访问NuGet官方源延迟高、连接不稳定,可在~/.nuget/NuGet/目录下配置NuGet.Config文件添加国内镜像源,排除网络因素导致的连接异常。

内容的提问来源于stack exchange,提问作者Revan1611

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.01 22:31:01