If you’re getting the dreaded “compiler limit: internal heap limit reached” and the corresponding “Failed to create virtual memory for PCH” then you can use the /ZmXXXX switch to increase the heap memory allocated to precompiled header (PCH) compilation.

Luckily, it’s very easy to do in UE4, just put this

…in your target.cs:

WindowsPlatform.PCHMemoryAllocationFactor = 2000;

…or in your BuildConfiguration.xml:

<WindowsPlatform>
    <PCHMemoryAllocationFactor>2000</PCHMemoryAllocationFactor>
</WindowsPlatform>

If you’re putting it in the BuildConfiguration.xml then it will apply to any and all of your UE4 projects and will trigger a recompile of source-built engines!

You can increase this number further, it is not a MegaByte figure, rather a scale. More info here:
https://docs.microsoft.com/en-us/cpp/build/reference/zm-specify-precompiled-header-memory-allocation-limit?view=msvc-160

Some examples:

Published

Comments

No Comments

Leave a Reply