Tools: Unreal Engine 5.7 blueprint project package for Windows under Linux (Ubuntu 24.04) Building

Tools: Unreal Engine 5.7 blueprint project package for Windows under Linux (Ubuntu 24.04) Building

1. Set paths and create AutoSDK dir:

2. Download Windows SDK and Visual Studio Build Tools using msvc-wine:

3. Create necessary symlink:

4. Download GE-Proton10-34:

5. Download Umu-Launcher:

6. Create wrapper script in $UE_PATH/umu:

7. Create Unreal Engine launch script in $UE_PATH/start:

8. How to build a package outside the UE editor? I have managed to compile my project based on 3rd person sample in UE 5.7 using Umu/Proton. Here is how to do it: I was not able to build a package directly from editor: But it is possible to do it using cmd launched by umu wrapper: This is the build command that you can change accorging to your needs: This should produce packaged files into 'Projects/YourProject/Packaged/Win64`. Be aware that UE 5.7 is unstable. Both Linux native and Windows version run on Proton are crashing very often so save your project often and try to tinker with DefaultEngine and DefaultEditor configuration. Templates let you quickly answer FAQs or store snippets for re-use. Hide child comments as well For further actions, you may consider blocking this person and/or reporting abuse

Command

Copy

$ export UE_PATH=/Path/To/UE_5.7 # Set this to your Unreal Engine dir export MSVC_PATH=$UE_PATH/AutoSDK/HostWin64/Win64 mkdir -p $MSVC_PATH export UE_PATH=/Path/To/UE_5.7 # Set this to your Unreal Engine dir export MSVC_PATH=$UE_PATH/AutoSDK/HostWin64/Win64 mkdir -p $MSVC_PATH export UE_PATH=/Path/To/UE_5.7 # Set this to your Unreal Engine dir export MSVC_PATH=$UE_PATH/AutoSDK/HostWin64/Win64 mkdir -p $MSVC_PATH cd $UE_PATH -weight: 500;">git pull https://github.com/mstorsjo/msv​c-wine cd msvc-wine ./vsdownload.py --accept-license \ --major 17 \ --dest $MSVC_PATH \ --msvc-version 17.8 \ --sdk-version 10.0.22621 --architecture x64 \ --host-arch x64 $ ./-weight: 500;">install.sh $MSVC_PATH cd $UE_PATH -weight: 500;">git pull https://github.com/mstorsjo/msv​c-wine cd msvc-wine ./vsdownload.py --accept-license \ --major 17 \ --dest $MSVC_PATH \ --msvc-version 17.8 \ --sdk-version 10.0.22621 --architecture x64 \ --host-arch x64 $ ./-weight: 500;">install.sh $MSVC_PATH cd $UE_PATH -weight: 500;">git pull https://github.com/mstorsjo/msv​c-wine cd msvc-wine ./vsdownload.py --accept-license \ --major 17 \ --dest $MSVC_PATH \ --msvc-version 17.8 \ --sdk-version 10.0.22621 --architecture x64 \ --host-arch x64 $ ./-weight: 500;">install.sh $MSVC_PATH ln -s $MSVC_PATH/VC/Tools/MSVC $MSVC_PATH/VS2022 ln -s $MSVC_PATH/VC/Tools/MSVC $MSVC_PATH/VS2022 ln -s $MSVC_PATH/VC/Tools/MSVC $MSVC_PATH/VS2022 cd $UE_PATH -weight: 500;">wget https://github.com/GloriousEggroll/proton-ge-custom/releases/download/GE-Proton10-34/GE-Proton10-34.tar.gz tar -xzf ./GE-Proton10-34.tar.gz cd $UE_PATH -weight: 500;">wget https://github.com/GloriousEggroll/proton-ge-custom/releases/download/GE-Proton10-34/GE-Proton10-34.tar.gz tar -xzf ./GE-Proton10-34.tar.gz cd $UE_PATH -weight: 500;">wget https://github.com/GloriousEggroll/proton-ge-custom/releases/download/GE-Proton10-34/GE-Proton10-34.tar.gz tar -xzf ./GE-Proton10-34.tar.gz -weight: 500;">wget https://github.com/Open-Wine-Components/umu-launcher/releases/download/1.4.0/umu-launcher_1.4.0-1_all_ubuntu-noble.deb -weight: 600;">sudo -weight: 500;">apt -weight: 500;">install ./umu-launcher_1.4.0-1_all_ubuntu-noble.deb -weight: 500;">wget https://github.com/Open-Wine-Components/umu-launcher/releases/download/1.4.0/umu-launcher_1.4.0-1_all_ubuntu-noble.deb -weight: 600;">sudo -weight: 500;">apt -weight: 500;">install ./umu-launcher_1.4.0-1_all_ubuntu-noble.deb -weight: 500;">wget https://github.com/Open-Wine-Components/umu-launcher/releases/download/1.4.0/umu-launcher_1.4.0-1_all_ubuntu-noble.deb -weight: 600;">sudo -weight: 500;">apt -weight: 500;">install ./umu-launcher_1.4.0-1_all_ubuntu-noble.deb #!/usr/bin/env bash set -euo pipefail nvidia-settings -a "[gpu:0]/GPUPowerMizerMode=1" # prevent some crashes on RTX # SET YOUR PATHS HERE!!! export UE_PATH="/Your/Path/To/UE_5.7" export UE_SDKS_ROOT="z:\\Your\\Path\\To\\UE_5.7\\AutoSDK" export PROTONPATH="$UE_PATH/GE-Proton10-34" export WINEPREFIX="$UE_PATH/prefix" # Fixes preventing some crashes on RTX export DXVK_ASYNC=1 export PROTON_USE_XALIA=0 export DISABLE_LAYER_MESA_ANTI_LAG=1 # Disable RayTracing for more stability export VKD3D_CONFIG=nodxr EXE="$1" shift || true mkdir -p "$WINEPREFIX" exec umu-run "$EXE" "$@" #!/usr/bin/env bash set -euo pipefail nvidia-settings -a "[gpu:0]/GPUPowerMizerMode=1" # prevent some crashes on RTX # SET YOUR PATHS HERE!!! export UE_PATH="/Your/Path/To/UE_5.7" export UE_SDKS_ROOT="z:\\Your\\Path\\To\\UE_5.7\\AutoSDK" export PROTONPATH="$UE_PATH/GE-Proton10-34" export WINEPREFIX="$UE_PATH/prefix" # Fixes preventing some crashes on RTX export DXVK_ASYNC=1 export PROTON_USE_XALIA=0 export DISABLE_LAYER_MESA_ANTI_LAG=1 # Disable RayTracing for more stability export VKD3D_CONFIG=nodxr EXE="$1" shift || true mkdir -p "$WINEPREFIX" exec umu-run "$EXE" "$@" #!/usr/bin/env bash set -euo pipefail nvidia-settings -a "[gpu:0]/GPUPowerMizerMode=1" # prevent some crashes on RTX # SET YOUR PATHS HERE!!! export UE_PATH="/Your/Path/To/UE_5.7" export UE_SDKS_ROOT="z:\\Your\\Path\\To\\UE_5.7\\AutoSDK" export PROTONPATH="$UE_PATH/GE-Proton10-34" export WINEPREFIX="$UE_PATH/prefix" # Fixes preventing some crashes on RTX export DXVK_ASYNC=1 export PROTON_USE_XALIA=0 export DISABLE_LAYER_MESA_ANTI_LAG=1 # Disable RayTracing for more stability export VKD3D_CONFIG=nodxr EXE="$1" shift || true mkdir -p "$WINEPREFIX" exec umu-run "$EXE" "$@" #!/usr/bin/env bash # We will use DX12 and no RayTracing ./umu Engine/Binaries/Win64/UnrealEditor.exe -dx12 -NoRayTracing #!/usr/bin/env bash # We will use DX12 and no RayTracing ./umu Engine/Binaries/Win64/UnrealEditor.exe -dx12 -NoRayTracing #!/usr/bin/env bash # We will use DX12 and no RayTracing ./umu Engine/Binaries/Win64/UnrealEditor.exe -dx12 -NoRayTracing LogOutputDevice: Error: === Handled ensure: === LogOutputDevice: Error: Ensure condition failed: BuildTargetInfo [File:D:\build\++UE5\Sync\Engine\Source\Editor\TurnkeySupport\Private\TurnkeySupportModule.cpp] [Line: 447] LogOutputDevice: Error: CookOrPackage BuildTargetName='' IniPlatformName='Windows' Mode='1' BuildCookRunParams='-nop4 -utf8output -nocompileeditor -skipbuildeditor -cook -project="S:/Unreal/Projects/Janek_new/Janek1.uproject" -unrealexe="S:\Unreal\UE_5.7\Engine\Binaries\Win64\UnrealEditor-Cmd.exe" -platform=Win64 -installed -SkipCookingErrorSummary -JsonStdOut 'where BuildTargetInfo is null and architecture 'x64' is specified. One way to do this is to add c++ code to a project, but not build the project editor, then package. Returning without cook or package instead of asserting. LogOutputDevice: Error: Stack: LogOutputDevice: Error: === Handled ensure: === LogOutputDevice: Error: Ensure condition failed: BuildTargetInfo [File:D:\build\++UE5\Sync\Engine\Source\Editor\TurnkeySupport\Private\TurnkeySupportModule.cpp] [Line: 447] LogOutputDevice: Error: CookOrPackage BuildTargetName='' IniPlatformName='Windows' Mode='1' BuildCookRunParams='-nop4 -utf8output -nocompileeditor -skipbuildeditor -cook -project="S:/Unreal/Projects/Janek_new/Janek1.uproject" -unrealexe="S:\Unreal\UE_5.7\Engine\Binaries\Win64\UnrealEditor-Cmd.exe" -platform=Win64 -installed -SkipCookingErrorSummary -JsonStdOut 'where BuildTargetInfo is null and architecture 'x64' is specified. One way to do this is to add c++ code to a project, but not build the project editor, then package. Returning without cook or package instead of asserting. LogOutputDevice: Error: Stack: LogOutputDevice: Error: === Handled ensure: === LogOutputDevice: Error: Ensure condition failed: BuildTargetInfo [File:D:\build\++UE5\Sync\Engine\Source\Editor\TurnkeySupport\Private\TurnkeySupportModule.cpp] [Line: 447] LogOutputDevice: Error: CookOrPackage BuildTargetName='' IniPlatformName='Windows' Mode='1' BuildCookRunParams='-nop4 -utf8output -nocompileeditor -skipbuildeditor -cook -project="S:/Unreal/Projects/Janek_new/Janek1.uproject" -unrealexe="S:\Unreal\UE_5.7\Engine\Binaries\Win64\UnrealEditor-Cmd.exe" -platform=Win64 -installed -SkipCookingErrorSummary -JsonStdOut 'where BuildTargetInfo is null and architecture 'x64' is specified. One way to do this is to add c++ code to a project, but not build the project editor, then package. Returning without cook or package instead of asserting. LogOutputDevice: Error: Stack: cd $UE_PATH ./umu wineconsole cmd cd $UE_PATH ./umu wineconsole cmd cd $UE_PATH ./umu wineconsole cmd set UE_PATH=Z:\Your\Path\To\UE_5.7 cd %UE_PATH%\Engine\Build\BatchFiles\RunUAT.bat BuildCookRun -nop4 -utf8output -project="%UE_PATH%\Projects\YourProject\YourProject.uproject" -unrealexe=%UE_PATH%\Engine\Binaries\Win64\UnrealEditor-Cmd.exe" -platform=Win64 -clientconfig=Development -serverconfig=Development -installed -nocompileeditor -skipbuildeditor -nobuild -cook -stage -package -pak -iostore -prereqs -archive -archivedirectory="%UE_PATH%\Projects\YourProject\Packaged\Win64" set UE_PATH=Z:\Your\Path\To\UE_5.7 cd %UE_PATH%\Engine\Build\BatchFiles\RunUAT.bat BuildCookRun -nop4 -utf8output -project="%UE_PATH%\Projects\YourProject\YourProject.uproject" -unrealexe=%UE_PATH%\Engine\Binaries\Win64\UnrealEditor-Cmd.exe" -platform=Win64 -clientconfig=Development -serverconfig=Development -installed -nocompileeditor -skipbuildeditor -nobuild -cook -stage -package -pak -iostore -prereqs -archive -archivedirectory="%UE_PATH%\Projects\YourProject\Packaged\Win64" set UE_PATH=Z:\Your\Path\To\UE_5.7 cd %UE_PATH%\Engine\Build\BatchFiles\RunUAT.bat BuildCookRun -nop4 -utf8output -project="%UE_PATH%\Projects\YourProject\YourProject.uproject" -unrealexe=%UE_PATH%\Engine\Binaries\Win64\UnrealEditor-Cmd.exe" -platform=Win64 -clientconfig=Development -serverconfig=Development -installed -nocompileeditor -skipbuildeditor -nobuild -cook -stage -package -pak -iostore -prereqs -archive -archivedirectory="%UE_PATH%\Projects\YourProject\Packaged\Win64"