When working on a source build of an Unreal Engine (UE) project with a team, some team members might not have the necessary software or knowledge to build and run Unreal Engine from source. In these cases, you can build Unreal Engine binaries and distribute them to your team as an installed build. This creates a package similar to what is deployed by the Epic Games Launcher.
For more general instructions on how to create an Installed Build, refer to the Installed Build Reference. This page provides additional information and steps for developers using Windows.
For more general instructions on how to create an Installed Build, refer to the Installed Build Reference. This page provides additional information and steps for developers using macOS.
For more general instructions on how to create an Installed Build, refer to the Installed Build Reference. This page provides additional information and steps for developers using Linux.
Prerequisites
Before you make an installed build, make sure you have the following prerequisites:
-
Windows Debugging Tools component for Windows 10 SDK (Windows 10 only – See below).
-
A compatible installation of Xcode with all MacOS development requirements.
-
You must have the appropriate OS components and libraries for using UE with Linux.
-
Your source code must have Linux line endings to compile on Linux.
Recommended Hardware
We recommend you use a machine with a high processor core/thread count for builds. While UE builds on a single core, build times are significantly reduced with multi-core processors. See Recommended Hardware and Software Specifications for more details on recommended hardware.
Windows 10 SDK (Windows 10 users only)
On Windows 10, you need to install the Windows Debugging Tools component in the Windows 10 SDK. This enables PDBCopy.exe
, which is used in the build process to strip symbols and optimize the resulting package size.
If you do not already have the Windows 10 SDK installed, follow these steps:
-
Download and install the Windows 10 SDK from Microsoft's site.
-
When you reach the dialogue that says select the features you want to install, make sure Debugging Tools for Windows is checked, then proceed with the installation.
-
Proceed with the installation.
If you already have the Windows 10 SDK set up, but don’t have Debugging Tools for Windows, follow these steps:
-
Open Add or Remove Programs.
-
In the list of available programs, locate your Windows Software Development Kit installation. Click Modify.
-
In the list of options that appears, check Change and click Next.
-
When you see the dialog that says select the features you want to change, check Debugging Tools for Windows, then click Change to proceed with the installation.
Make an Installed Build
To make an Installed Build on Windows, follow these steps:
-
Regenerate your Unreal Engine project files.
- If you encounter error messages when attempting to regenerate project files, double check that you have the Windows DotNet 6.0 runtime installed.
-
Use
RunUAT.bat
to create an installed build. The following is an example of a BuildGraph command to create an installed build for Windows:Command Line
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
Make sure you specify whether or not every platform that you have available should be added or not. If you have additional platforms not mentioned here in your source code, add
-Set:With[Platform]=true
or-Set:With[Platform]=false
according to your project’s needs, where [Platform] is replaced with the name of the added platform.The details about the parameters used in the above example are as follows:
Parameter Required or Optional Description -target="Make Installed Build Win64”
Required Instructs BuildGraph to run a specific operation. This graph of dependencies is described in the script="Engine/Build/InstalledEngineBuild.xml" and there are other options available that may meet your requirements better, but for the purposes of this document our example targets a build that matches what a user would receive from the launcher version of Unreal Engine. -set With[Platform]=true
or-set With[Platform]=false
Required Specifies whether or not support for a given platform should be added to your installed build, where [Platform] is replaced with the name of a platform you want to enable or disable. Make sure to add this parameter for every platform you have source code for. For details on which platforms to enable or disable, refer to the Required Platforms section below. -set:GameConfigurations=Development;Shipping
Required Flag for different versions of the editor. We recommend including Development and Shipping. -set WithClient=false
and-set WithServer=false
Optional Specifies whether to create Client and Server builds for network multiplayer projects. Defaults to false. -set WithDDC=false
Optional Specifies whether to create a build that includes Derived Data Cache support. Defaults to false. -clean
Recommended Performs a fresh recompile of the project. Remove this parameter if you encounter an "Other Compilation Error” message. If you receive an "Other Compilation Error" message, remove the
-clean
parameter and try again, as there are known issues with this command on Linux. -
Build the Shader Compiler Worker.
Engine\Build\BatchFiles\Build.bat ShaderCompileWorker Win64 Development
Your build appears in the Windows directory where Feature Packs, Templates, and Engine are located for distribution.
To make an installed build on MacOS, follow these steps:
-
Open your Unreal Engine source directory and run
GenerateProjectFiles.command
in Terminal. -
Use RunUAT.sh to create an installed build:
Command Line
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
The details about the parameters used in the above example are as follows:
Parameter Required or Optional Description -target="Make Installed Build Mac"
Required Instructs BuildGraph to run a specific operation. This graph of dependencies is described in the script="Engine/Build/InstalledEngineBuild.xml" and there are other options available that may meet your requirements better, but for the purposes of this document our example targets a build that matches what a user would receive from the launcher version of Unreal Engine. -set With[Platform]=true
or-set With[Platform]=false
Required Specifies whether or not support for a given platform should be added to your installed build, where [Platform] is replaced with the name of a platform you want to enable or disable. Make sure to add this parameter for every platform you have source code for. For details on which platforms to enable or disable, refer to the Required Platforms section below. -set:GameConfigurations=Development;Shipping
Required Flag for different versions of the editor. We recommend including Development and Shipping. -set WithClient=false
and-set WithServer=false
Optional Specifies whether to create Client and Server builds for network multiplayer projects. Defaults to false. -set WithDDC=false
Optional Specifies whether to create a build that includes Derived Data Cache support. Defaults to false. -clean
Recommended Performs a fresh recompile of the project. Remove this parameter if you encounter an "Other Compilation Error” message. Make sure you specify all platforms that should not be built. If you receive an "Other Compilation Error" message, remove the
-clean
parameter and try again, as there are known issues with this command on Linux. -
Build the Shader Compiler Worker.
Command Line
/Engine/Build/BatchFiles/Mac/Build.sh ShaderCompileWorker MacDevelopment

If you follow the steps in this section and encounter a line ending or permissions error, follow the steps in How to Fix Linux Line Endings and Permissions below to fix your line endings, then try again.
To make an installed build on Linux, follow these steps:
-
Run
Setup.sh
to obtain necessary binary packages and run your toolchain configuration. -
Run
GenerateProjectFiles.sh
to generate your IDE’s project files.If you encounter
permission denied
errors on a file, refer to the previous section to correct their line endings. You might need to run thechmod
command on additional files. After that, runGenerateProjectFiles.sh
again. -
Use
RunUAT.sh
to create an installed build. The following is an example of a BuildGraph command to create an installed build for Linux:Command Line
/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
The details about the parameters used in the above example are as follows:
Parameter Required or Optional Description -target="Make Installed Build Linux”
Required Instructs BuildGraph to run a specific operation. This graph of dependencies is described in the script="Engine/Build/InstalledEngineBuild.xml" and there are other options available that may meet your requirements better, but for the purposes of this document our example targets a build that matches what a user would receive from the launcher version of Unreal Engine. -set With[Platform]=true
or-set With[Platform]=false
Required Specifies whether or not support for a given platform should be added to your installed build, where [Platform] is replaced with the name of a platform you want to enable or disable. Make sure to add this parameter for every platform you have source code for. For details on which platforms to enable or disable, refer to the Required Platforms section below. -set:GameConfigurations=Development;Shipping
Required Flag for different versions of the editor. We recommend including Development and Shipping. -set WithClient=false
and-set WithServer=false
Optional Specifies whether to create Client and Server builds for network multiplayer projects. Defaults to false. -set WithDDC=false
Optional Specifies whether to create a build that includes Derived Data Cache support. Defaults to false. -clean
Recommended Performs a fresh recompile of the project. Remove this parameter if you encounter an "Other Compilation Error” message. Make sure you specify all platforms that should not be built. If you receive an "Other Compilation Error" message, remove the
-clean
parameter and try again, as there are known issues with this command on Linux. -
Build the Shader Compile Worker using
Build.sh
. The following is an example of a command to build the Shader Compile Worker:Command Line
/Engine/Build/BatchFiles/Linux/Build.sh ShaderCompileWorker Linux Development
You now have a build of Unreal Editor in LocalBuilds/Engine/Linux
that you can copy to other machines or docker images and run on Linux.
Required Platforms
When creating installed builds on Windows, make sure you enable the following platforms with the -With[Platform]
parameter:
Platform | Parameter | Description |
---|---|---|
Android | -set WithAndroid=true |
Required to support publishing on Android, which is the target platform for most HMI projects. |
Windows 64-bit | -set WithWin64=true |
Required to support building the editor on Windows. |
Disable all other platforms, as they are not necessary for either running Unreal Editor or packaging HMI projects.
When creating installed builds on macOS, make sure you enable the following platforms with the -With[Platform]
parameter:
Platform | Parameter | Description |
---|---|---|
MacOS | -set WithMac=true |
Required to support building the editor on Windows. |
Android | -set WithAndroid=true |
Required to support publishing on Android, which is the target platform for most HMI projects. |
iOS | -set WithIOS=true |
Required to support publishing on iOS, which you may also want to support. |
tvOS | -set WithtvOS=false |
tvOS is not supported for HMI projects, and should be disabled. |
Disable all other platforms, as they are not necessary for either running Unreal Editor or packaging HMI projects.
When creating installed builds on Linux, make sure you enable the following platforms with the -With[Platform]
parameter:
Platform | Parameter | Description |
---|---|---|
Android | -set WithAndroid=true |
Required to support publishing on Android, which is the target platform for most HMI projects. |
Linux | -set WithLinux=true |
Required to support building the editor on Linux. |
Linux ARM64 | -set WithLinuxArm64=true |
Required if you intend to support ARM64 Linux devices. |
How to Fix Linux Line Endings and Permissions
Depending on the way you pull your source code from your source control, the line endings in your code may change. Windows uses CR LF (Carriage Return Line Feed), while Mac and Linux use LF (Line Feed).
For more information about line endings, see Microsoft’s documentation on encoding and line break characters.
Windows line endings are not compatible with Linux. Therefore, you might encounter an error when compiling on Linux. If you encounter a line ending error, follow these steps to fix them:
-
To fix your line endings, open your command line and use the
find
command and search for all files in your Unreal Engine directory with a.sh
extension, then run thechmod
command on each one to make them executable. For example:Command Line
find C:/Epic Games/UE-5.3/Source -type f -iname "*.sh" -exec chmod +x {} \;
The parameters of this command are as follows:
Parameter Description -type f Find normal files only. This skips directories, symlinks, named pipes and sockets, and special files found in /dev. -iname Ignore case in the name. "*.sh" Tells the find
command to search for files with a.sh
extension.-exec chmod +x {} Carry out a chmod
command on each file found and make each file executable.\; Indicates the end of the command. -
To catch executable files that don’t use a
.sh
extension, change your directory to your Unreal Engine install directory, then run the following chmod commands: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
Test the Installed Build Executable
Installed builds appear in the LocalBuilds folder under LocalBuilds/Engine/Linux/Engine/Binaries/Win64
. On the Windows operating system, UnrealEditor.exe
is the main executable for the Unreal Editor. Run this executable to test your build.

When you run your installed build for the first time, a prompt appears to ask for firewall permissions. We advise that you accept these permissions for full functionality.
To archive and distribute the build, place your installed build in the top directory of your source control repository alongside the FeaturePacks, Templates, and Engine directories.

If you see a prompt stating "Unable to launch ShaderCompileWorker" or experience a crash while compiling shaders, the Shader Compiler Worker has not been built yet. Revisit the last step of the workflow under Make an Installed Build above. We build Shader Compiler Worker separately so that you do not need to rebuild Shader Compiler Worker every time you build the editor.
Installed builds appear in LocalBuilds/Engine/Mac/Engine/Binaries/Mac
. On the MacOS operating system, the UEEditor
application file is the main executable for the Unreal Editor. Run this executable in a terminal shell to test your build.

To archive and distribute the build, place your installed build in the top directory of your source control repository alongside the FeaturePacks, Templates, and Engine directories.
Installed builds appear in the LocalBuilds folder under LocalBuilds/Engine/Linux/Engine/Binaries/Linux
. On the Linux operating system, the UnrealEditor
application file is the main executable for the Unreal Editor. Run this executable in a terminal shell to test your build.

To archive and distribute the build, place your installed build in the top directory of your source control repository alongside the FeaturePacks, Templates, and Engine directories.