No announcement yet.

packaging for linux takes one week

  • Filter
  • Time
  • Show
Clear All
new posts

    packaging for linux takes one week

    Hi! I have a project that contains around 10 free Epic Paragon characters. My machine isn't that bad, packaging the same project for windows64 takes around 1-2 hours. But packaging this project for linux takes around one week. What can i do to reduce packaging time?

    I'm using Unreal 4.22.3 and linux toolchain used is v13 clang-7.0.1-based

    - Are you cross-packaging from the Windows Editor to Linux or is this a build on Linux and for Linux?

    - What's the state of the "Full Rebuild" option in the project settings? It should affect both platforms equally, but maybe one is an official release and the other a source build, causing the whole engine to be recompiled?

    - If building on native Linux, how many actions is UnrealBuildTool performing in parallel? I noticed it's by default capped to 10 parallel actions on my Linux system, perhaps it's not using all your CPU cores?

    For reference, I have a mixed Blueprint / C++ project, not as big as yours, my main OS is Linux and when I boot Windows and package my project there, it generally takes much longer (about 20 minutes vs. 5 minutes)

    - Same engine version, Windows is binary release, Linux is built from GitHub sources (tag 4.22)
    - Unreal Engine sources are on my Linux partition (ext4), SSD
    - Project sources are on a shared patition (NTFS via ntfs3g on Linux), 5400 RPM HDD
    - Linux environment is Gentoo Linux with kernel 4.19.44

    Can't think of anything else that would make a difference.


      This is an answer i got from a different source:

      Unfortunately, on a 2-core machine the packaging process cannot go wide You may want to edit BaseEngine.ini and set
        1. [DevOptions.Shaders]
        2. bAllowCompilingThroughWorkers=false

      Since in your case spawning separate shader compile workers probably only makes the situation worse. The discrepancy between the times is perhaps because on second (and later) packaging you're already using the cached data from Engine/DerivedDataCache.

      I recommend finding a quad-core or better machine for packaging (the more cores, the better).