[TOOL] Create your own binary build for your team

I just made a small app that can help you build binary version of UE4 from source build.

https://raw.githubusercontent.com/ryanjon2040/UE4-Binary-Builder/master/Documentation/Screenshot_1.png

https://raw.githubusercontent.com/ryanjon2040/UE4-Binary-Builder/master/Documentation/Screenshot_2.PNG

https://raw.githubusercontent.com/ryanjon2040/UE4-Binary-Builder/master/Documentation/Screenshot_4.PNG

Download (with source): Unreal Binary Builder v3.0 released — ryanjon2040

4 Likes

This is amazing! Thank you! This helps my development pipeline so much.

Sweet, instant download !

[QUOTE=BananaKing932;686306]
This is amazing! Thank you! This helps my development pipeline so much.

[QUOTE=Maxime.Dupart;687388]
Sweet, instant download !

Thank you! :). I have just updated the app. You can now see the output of Automation tool inside the app itself (this removes automation tool console window). :slight_smile:

Nice, I’ve actually been using this a bit recently for trying to package builds. Very helpful. Bonus points for providing source :slight_smile:

It would be really nice to be able to change some of the parameters of the engine build itself as well, perhaps even running Setup.Bat with custom parameters before trying to package / build. I’m thinking of customizing the InstalledEngineBuild.xml file for example to allow Server Builds and remove Starter Content / Feature Packs.

[QUOTE=TheJamsh;687513]
Nice, I’ve actually been using this a bit recently for trying to package builds. Very helpful. Bonus points for providing source :slight_smile:

I’m really happy to hear that. Thank you. :slight_smile:

[QUOTE=TheJamsh;687513]
It would be really nice to be able to change some of the parameters of the engine build itself as well, perhaps even running Setup.Bat with custom parameters before trying to package / build.

I have already made a few changes and it now includes running setup.bat with parameters (exclude/include platform, force, prompt and other arguments). I’m on vacation for 12 days now so when I come back, I’ll upload the app and push the changes. :slight_smile:

[QUOTE=TheJamsh;687513]
I’m thinking of customizing the InstalledEngineBuild.xml file for example to allow Server Builds and remove Starter Content / Feature Packs.

I recently submitted a pull request that modifies InstalledEngineBuild.xml to allow Server and Client in binary builds. You can check it out here: https://github.com/EpicGames/UnrealEngine/pull/3129

Has this been updated to use the 4.1.6 source :slight_smile:

Doesn’t need to be, works fine

BTW for anyone doing console development, I’ve (finally) been able to create a version that supports PS4 and Xbox One support too. Took a few attempts to compile successfully but does work.

I can submit a PR for you @ryanjon2040?

[QUOTE=anonymous_user_9c39f750Jamsh;735549]
BTW for anyone doing console development, I’ve (finally) been able to create a version that supports PS4 and Xbox One support too. Took a few attempts to compile successfully but does work.

I can submit a PR for you @ryanjon2040?

Definitely @TheJamsh! :smiley:

I’m not getting any LocalBuilds folder. Has the process changed? (using 4.16.1)

Awesome! This is exactly what I need.

I came across this while trying to create a binary build, but as I started looking for the Automation tool exe I realized I didn’t have that exe anywhere. Is AutomationTool.exe supposed to be the right thing to find? I see UnrealBuildTool, but that’s about it.

Edit: I tried to run a batch file previously mentioned in another post. I went to the bathroom and came back to my computer restarted. Not exactly sure what happened, but after that there was the automation tool exe in the folder mentioned here. I tried using the build tool this time and it went through the entire process I’m assuming, but as what duke said, I didn’t get a LocalBuilds folder. It doesn’t seem to have made one anywhere that I can see. Does this tool still work with 4.16.3 builds @ryanjon2040 ?

@dragon3582,

I just checked the InstalledEngineBuild.xml in promoted branch and the Local Installed Directory is still in your root directory like this:


<Property Name="LocalInstalledDir" Value="$(RootDir)/LocalBuilds/Engine/Windows"/>

The actual process of using this tool is like this:

1: Download Unreal Source.
2: Run Setup.bat.
3: Get a coffee and wait till setup.bat finishes.
4: Run GenerateProjectFiles.bat.
5: Open UE4.sln
6: In Solution Explorer under Programs, right click on AutomationTool and select build. This will build and create the AutomationTool.exe.

Once all the steps above are done, you can start this app and select the AutomationTool exe file, check the options and Build. The log at the right side gives you the output of AutomationTool so you can see if the build failed or no.

Hope this helps. :slight_smile:

2 Likes

Hm. Alright, after a couple days I came back to this to try it again following those steps and I did exactly the steps you described. But three things happened that I’m sure are not right.

  1. When the binary builder runs, it doesn’t frame the command prompt window inside of the binary builder like the picture at the top. It just closes it and the command prompt comes up and begins running through it.
  2. At the end the command prompt closed suddenly, but i managed to make out it saying warning with some red text by it.
  3. Still no LocalBuilds folder.

At this point I’m assuming it’s the engine version I downloaded. There was a customized version that I wanted to use that has some cool toon shading options in the material editor. Not sure why it doesn’t want to compile this, and I can’t even see what happened at the end of the automation tool command prompt to see what failed if anything. There was a size bump somewhere as it went down 11gb. Which seems about right for an engine build. But it’s not in the engine folder of localbuilds like its supposed to be.

Edit: I just downloaded the normal 4.16.3 release code and tried to do the steps. Still no Local builds folder and the above steps happened again, although I can’t confirm the warning this time because it disappeared too fast. I really don’t know what I might be doing wrong here. Can you point me in the right direction here @ryanjon2040 ?

[QUOTE=dragon3582;750401]

  1. When the binary builder runs, it doesn’t frame the command prompt window inside of the binary builder like the picture at the top. It just closes it and the command prompt comes up and begins running through it.

Did you run AutomationTool from inside Binary Builder? You have to select the AutomationTool.exe inside the Binary Builder application and after selecting you have to click the Build button. This program will then run AutomationTool.exe with given parameters and displays the output inside the log window to the right.

[QUOTE=dragon3582;750401]
2. At the end the command prompt closed suddenly, but i managed to make out it saying warning with some red text by it.

To overcome this issue what I used to do before creating this app was I created a bat file that executed AutomationTool.exe manually and then put a pause](windows - How to prevent auto-closing of console after the execution of batch file - Stack Overflow) command at the end. This prevented the CMD window from closing automatically.

For example, here is an example content. You save the below stuff as a bat file and then run this:



"\Engine\Binaries\DotNET\AutomationTool.exe" BuildGraph -target="Make Installed Build Win64" -script=Engine/Build/InstalledEngineBuild.xml -set:WithDDC=false -set:HostPlatformOnly=true -set:SignExecutables=false -NoSign
pause


[QUOTE=dragon3582;750401]
3. Still no LocalBuilds folder.

Because your build is failing for some reason.

Yea I did run the automation tool from the binary builder. It just closed and opened the command prompt. I’ll save that as a batch file and try to run it tomorrow. It takes around 40 minutes to get through everything before failing for some reason. I’ll see if this script can help me shed some light on this build fail and ill get back to you on what it did.

[QUOTE=dragon3582;751023]
Yea I did run the automation tool from the binary builder. It just closed and opened the command prompt. I’ll save that as a batch file and try to run it tomorrow. It takes around 40 minutes to get through everything before failing for some reason. I’ll see if this script can help me shed some light on this build fail and ill get back to you on what it did.

I just checked the download link and I think you are using the old version. i just updated the download link so please download the app from this link and you should now see the log window like in the first post. Releases · ryanjon2040/Unreal-Binary-Builder · GitHub

I only updated the git source and forgot to update the actual download to the new one. Sorry for the confusion.

Follow the same steps as mentioned above and you should now see the error that’s causing the build to fail.

Ah i see. Do you still want me to try the batch file or will this version of the binary builder pause at the end to show me the error?

[QUOTE=dragon3582;751039]
Ah i see. Do you still want me to try the batch file or will this version of the binary builder pause at the end to show me the error?

Try the new binary builder. That will work :).