与团队合作处理 虚幻引擎(UE) 项目的源构建时,一些团队成员可能不具备从源编译和运行虚幻引擎所需的软件或知识。在这些情况下,你可以编译虚幻引擎二进制文件,并将其作为 已安装构建 分发给你的团队。这样创建的包类似于Epic Games启动程序所部署的内容。
有关如何创建已安装构建的更多通用说明,请参阅已安装构建参考。本页面为使用 Windows 的开发人员提供了额外信息和步骤。
有关如何创建已安装构建的更多通用说明,请参阅已安装构建参考。本页面为使用 macOS 的开发人员提供了额外信息和步骤。
有关如何创建已安装构建的更多通用说明,请参阅已安装构建参考。本页面为使用 Linux 的开发人员提供了额外信息和步骤。
先决条件
制作已安装构建之前,确保你满足以下先决条件:
-
Windows 10 SDK的Windows调试工具组件(仅限Windows 10 - 参见下文)。
-
满足所有MacOS开发要求的Xcode兼容安装。
-
你必须有合适的操作系统组件和库,才能将在Linux上使用UE。
-
你的源代码必须采用Linux行尾才能在Linux上编译。
推荐的硬件
我们推荐你使用具有高处理器核心/线程数量的计算机进行编译。虽然UE在单个核心上编译,但使用多核心处理器可以大幅减少编译时间。请参阅推荐的硬件和软件规格,详细了解推荐的硬件。
Windows 10 SDK(仅限Windows 10用户)
在Windows 10上,需要安装Windows 10 SDK中的Windows调试工具组件。这会启用 PDBCopy.exe
,它在编译过程中起到剥离符号并优化生成的数据包大小的作用。
如果你尚未安装Windows 10 SDK,请执行以下步骤:
-
看到 选择要安装的功能(select the features you want to install) 的对话框时,确保选中 Windows的调试工具(Debugging Tools for Windows) ,然后继续安装。
-
继续安装。
如果已经设了置Windows 10 SDK,但没有Windows的调试工具,请执行以下步骤:
-
打开 添加或删除程序(Add or Remove Programs) 。
-
在可用程序列表中,找到Windows软件开发工具包安装。点击 修改(Modify) 。
-
在显示的选项列表中,选中 更改(Change) 并点击 下一步(Next) 。
-
看到 选择要更改的功能(select the features you want to change) 对话框时,勾选 Windows的调试工具(Debugging Tools for Windows) ,然后点击 更改(Change) 继续安装。
制作已安装构建
要在Windows上制作已安装构建,请执行以下步骤:
-
重新生成你的虚幻引擎项目文件。
- 如果在尝试重新生成项目文件时遇到错误消息,请仔细检查是否安装了Windows DotNet 6.0运行时。
-
使用
RunUAT.bat
创建已安装构建。下面是用于为Windows创建已安装构建的BuildGraph命令示例:命令行
RunUAT.bat BuildGraph -script=Engine/Build/InstalledEngineBuild.xml -target="Make Installed Build Win64" -nosign -set:GameConfigurations=Development;Shipping -set:WithWin64=true -set:WithAndroid=true -set:WithDDC=false -set:WithLinux=false -set:WithLinuxArm64=false -set:WithIOS=false -set:WithTVOS=false -set:WithMac=false -clean
确保你已指定了是否应该添加每个可用的平台。如果你有此处源代码中未提到的其他平台,请根据你的项目需要添加
-Set:With[Platform]=true
或-Set:With[Platform]=false
,其中的[Platform]应替换为要添加的平台的名称。关于以上示例中使用的参数的详情如下所示:
参数 必需或可选 说明 -target="Make Installed Build Win64”
必需 指示BuildGraph运行特定操作。此依赖关系图表在script="Engine/Build/InstalledEngineBuild.xml"中说明,可能还有其他更能满足你需求的选项,但就本文档而言,但就本文档而言,我们的示例采用的构建匹配了用户会从启动程序版虚幻引擎收到的内容。 -set With[Platform]=true
或-set With[Platform]=false
必需 指定是否应该为你的已安装构建添加对相应平台的支持,其中[Platform]应替换为你想启用或禁用的平台的名称。确保为你有其源代码的每个平台添加此参数。关于要启用或禁用哪些平台的详情,请参阅下面的"必需平台"一节。 -set:GameConfigurations=Development;Shipping
必需 不同版本编辑器的标记。我们推荐包含 Development 和 Shipping 。 -set WithClient=false
and-set WithServer=false
可选 指定是否为网络多人游戏项目创建客户端和服务器构建。默认为false。 -set WithDDC=false
可选 指定是否创建包含派生数据缓存支持的构建。默认为false。 -clean
推荐 执行项目的全新重新编译。如果你遇到"其他编译错误(Other Compilation Error)"消息,请删除此参数。 如果你收到"其他编译错误(Other Compilation Error)"消息,请删除
-clean
参数并重试,因为此命令在Linux上存在已知问题。 -
构建着色器编译器工作程序。
Engine\Build\BatchFiles\Build.bat ShaderCompileWorker Win64 Development
你的构建会出现在Feature Packs、Templates和Engine目录所在的Windows目录中,以供分发。
要在MacOS上制作已安装构建,请执行以下步骤:
-
在终端中打开你的虚幻引擎源目录并运行
GenerateProjectFiles.command
。 -
使用
RunUAT.sh
创建已安装构建:命令行
RunUAT.sh BuildGraph -script=Engine/Build/InstalledEngineBuild.xml -target="Make Installed Build Mac" -nosign** **-set:WithWin64=false** -set:WithAndroid=true** -set:WithDDC=false -set:WithLinux=false -set:WithLinuxArm64=false **-set:WithTVOS=false -set:WithIOS=true -set:WithMac=true** -clean
关于以上示例中使用的参数的详情如下所示:
参数 必需或可选 说明 -target="Make Installed Build Mac"
必需 指示BuildGraph运行特定操作。此依赖关系图表在script="Engine/Build/InstalledEngineBuild.xml"中说明,可能还有其他更能满足你需求的选项,但就本文档而言,但就本文档而言,我们的示例采用的构建匹配了用户会从启动程序版虚幻引擎收到的内容。 -set With[Platform]=true
或-set With[Platform]=false
必需 指定是否应该为你的已安装构建添加对相应平台的支持,其中[Platform]应替换为你想启用或禁用的平台的名称。确保为你有其源代码的每个平台添加此参数。关于要启用或禁用哪些平台的详情,请参阅下面的"必需平台"一节。 -set:GameConfigurations=Development;Shipping
必需 不同版本编辑器的标记。我们推荐包含 Development 和 Shipping 。 -set WithClient=false
and-set WithServer=false
可选 指定是否为网络多人游戏项目创建客户端和服务器构建。默认为false。 -set WithDDC=false
可选 指定是否创建包含派生数据缓存支持的构建。默认为false。 -clean
推荐 执行项目的全新重新编译。如果你遇到"其他编译错误(Other Compilation Error)"消息,请删除此参数。 请确保你已指定了所有不应该构建的平台。如果你收到"其他编译错误(Other Compilation Error)"消息,请删除
-clean
参数并重试,因为此命令在Linux上存在已知问题。 -
构建着色器编译器工作程序。
命令行
/Engine/Build/BatchFiles/Mac/Build.sh ShaderCompileWorker MacDevelopment

如果你执行此章节中的步骤并遇到行尾或权限错误,请执行下面的"如何修复Linux行尾和权限"中的步骤来修复你的行尾,然后重试。
要在Linux上制作已安装构建,请执行以下步骤:
-
运行
Setup.sh
以获取必要的二进制包并运行你的工具链配置。 -
运行
GenerateProjectFiles.sh
以生成你的IDE的项目文件。如果你在文件上遇到
permission denied
错误,请参阅之前章节以更正其行尾。你可能需要对其他文件运行chmod
命令。此后,重新运行GenerateProjectFiles.sh
。 -
用
RunUAT.sh
创建已安装构建。下面是用于为Linux创建已安装构建的BuildGraph命令示例:命令行
/RunUAT.sh BuildGraph -script=Engine/Build/InstalledEngineBuild.xml -target="Make Installed Build Linux" -nosign **-set:GameConfigurations=Development;Shipping **-set:WithWin64=false** -set:WithAndroid=true** -set:WithDDC=false **-set:WithLinux=true** -set:WithLinuxArm64=false -set:WithTVOS=false -set:WithMac=false -clean
关于以上示例中使用的参数的详情如下所示:
参数 必需或可选 说明 -target="Make Installed Build Linux”
必需 指示BuildGraph运行特定操作。此依赖关系图表在script="Engine/Build/InstalledEngineBuild.xml"中说明,可能还有其他更能满足你需求的选项,但就本文档而言,我们的示例采用的构建匹配了用户会从启动程序版虚幻引擎收到的内容。 -set With[Platform]=true
或-set With[Platform]=false
必需 指定是否应该为你的已安装构建添加对相应平台的支持,其中[Platform]应替换为你想要启用或禁用的平台的名称。确保为你有其源代码的每个平台添加此参数。关于要启用或禁用哪些平台的详情,请参阅下面的"必需平台"一节。 -set:GameConfigurations=Development;Shipping
必需 不同版本编辑器的标记。我们推荐包含 Development 和 Shipping 。 -set WithClient=false
and-set WithServer=false
可选 指定是否为网络多人游戏项目创建客户端和服务器构建。默认为false。 -set WithDDC=false
可选 指定是否创建包含派生数据缓存支持的构建。默认为false。 -clean
推荐 执行项目的全新重新编译。如果你遇到"其他编译错误(Other Compilation Error)"消息,请删除此参数。 请确保你已指定了所有不应该构建的平台。如果你收到"其他编译错误(Other Compilation Error)"消息,请删除
-clean
参数并重试,因为此命令在Linux上存在已知问题。 -
使用
Build.sh
构建 着色器编译工作程序(Shader Compile Worker) 。下面是用于构建着色器编译工作程序的命令示例:命令行
/Engine/Build/BatchFiles/Linux/Build.sh ShaderCompileWorker Linux Development
现在你在 LocalBuilds/Engine/Linux
中有了一个虚幻编辑器构建,你可以将其复制到其他计算机或Docker图像,并在Linux上运行。
必需平台
在Windows上创建已安装构建时,确保使用 -With[Platform]
参数启用以下平台:
平台 | 参数 | 说明 |
---|---|---|
Android | -set WithAndroid=true |
需要此参数才能在Android上发布,Android是大部分HMI项目的目标平台。 |
Windows 64位 | -set WithWin64=true |
需要此参数才能在Windows上构建编辑器。 |
禁用其他所有平台,因为它们对于运行虚幻编辑器或封装HMI项目不是必要的。
在macOS上创建已安装构建时,确保使用 -With[Platform]
参数启用以下平台:
平台 | 参数 | 说明 |
---|---|---|
MacOS | -set WithMac=true |
需要此参数才能在Windows上构建编辑器。 |
Android | -set WithAndroid=true |
需要此参数才能在Android上发布,Android是大部分HMI项目的目标平台。 |
iOS | -set WithIOS=true |
需要此参数才能在iOS上发布,你可能也想支持该平台。 |
tvOS | -set WithtvOS=false |
tvOS不支持用于HMI项目,应该禁用。 |
禁用其他所有平台,因为它们对于运行虚幻编辑器或封装HMI项目不是必要的。
在Linux上创建已安装构建时,确保使用 -With[Platform]
参数启用以下平台:
平台 | 参数 | 说明 |
---|---|---|
Android | -set WithAndroid=true |
需要此参数才能在Android上发布,Android是大部分HMI项目的目标平台。 |
Linux | -set WithLinux=true |
需要此参数才能在Linux上构建编辑器。 |
Linux ARM64 | -set WithLinuxArm64=true |
需要此参数才能支持ARM64 Linux设备。 |
如何修复Linux行尾和权限
根据你从源码控制提取源代码的方式,代码中的 行尾 可能有所不同。Windows使用CR LF(回车符 + 换行符),而Mac和Linux使用LF(换行符)。
如需详细了解行尾,请参阅Microsoft关于编码和换行字符的文档。
Windows行尾不兼容Linux。因此,在Linux上编译时,你可能会遇到错误。如果你遇到行尾错误,请执行以下步骤进行修复:
-
要修复行尾,请打开命令行,使用
find
命令搜索你的虚幻引擎目录中带有.sh
扩展名的所有文件,然后对每个文件运行chmod
命令,使其成为可执行文件。例如:命令行
find C:/Epic Games/UE-5.3/Source -type f -iname "*.sh" -exec chmod +x {} \;
此命令的参数如下:
参数 说明 -type f 仅查找普通文件。这会跳过目录、符号链接、命名管道和插槽以及位于/dev中的特殊文件。 -iname 忽略名称中的大小写。 "*.sh" 指示 find
命令搜索带有.sh
扩展名的文件。-exec chmod +x {} 对找到每个文件执行 chmod
命令,使其成为可执行文件。\; 指示命令结尾。 -
要捕捉不使用
.sh
扩展名的可执行文件,请将你的目录更改为虚幻引擎安装目录,然后运行以下chmod命令:chmod +x Engine/Binaries/ThirdParty/Mono/Linux/bin/mono chmod +x Engine/Binaries/ThirdParty/Mono/Linux/bin/csc chmod +x Engine/Binaries/ThirdParty/Mono/Linux/bin/xbuild chmod +x Engine/Binaries/ThirdParty/Mono/Linux/bin/mcs chmod +x Engine/Binaries/Linux/dump_syms chmod +x Engine/Binaries/Linux/BreakpadSymbolEncoder chmod +x Engine/Binaries/Linux/UnrealCEFSubProcess chmod +x Engine/Binaries/Linux/UnrealVersionSelector-Linux-Shipping chmod +x Engine/Source/ThirdParty/Intel/ISPC/bin/Linux/ispc
测试已安装构建可执行文件
已安装构建会出现在LocalBuilds文件夹的 LocalBuilds/Engine/Linux/Engine/Binaries/Win64
下。在Windows操作系统上,UnrealEditor.exe
是虚幻编辑器的主可执行文件。运行此可执行文件以测试你的构建。

首次运行已安装构建时,会弹出请求防火墙权限的对话框。我们建议你接受这些权限,以便获得完整功能。
要存档和分发该构建,请将已安装构建与FeaturePacks、Templates和Engine目录一起放入源码控制仓库的顶级目录中。

如果你在编译着色器时看到"Unable to launch ShaderCompileWorker(无法启动ShaderCompileWorker)"提示或遇到崩溃,说明着色器编译器工作程序尚未构建。重新操作上文中"制作已安装构建"一节下的最后一步流程。我们单独构建了着色器编译器工作程序,这样你就不需要每次构建编辑器时重新构建着色器编译器工作程序。
已安装构建出现在 LocalBuilds/Engine/Mac/Engine/Binaries/Mac
中。在MacOS操作系统上, UEEditor
应用程序文件是虚幻编辑器的主可执行文件。在终端shell中运行此可执行文件以测试你的构建。

要存档和发布该构建,请将已安装构建与FeaturePacks、Templates和Engine目录一起放入源码控制仓库的顶级目录中。
已安装构建会出现在LocalBuilds文件夹的 LocalBuilds/Engine/Linux/Engine/Binaries/Linux
下。在Linux操作系统上,UnrealEditor
应用程序文件是虚幻编辑器的主可执行文件。在终端shell中运行此可执行文件以测试你的构建。

要存档和分发该构建,请将已安装构建与FeaturePacks、Templates和Engine目录一起放入源码控制仓库的顶级目录中。