iOS 15.x Crash (Corrupted Library) Occurring in Unreal Engine 5.7

To support Apple’s Declared Age Range requirement, we need to build the project using Xcode 26.2 Beta or later.

However, as shown in the attached logs, the application consistently crashes on iOS 15.x devices due to what appears to be a corrupted or invalid library reference during runtime.

This issue prevents us from meeting Apple’s new policy requirements, so we would appreciate any guidance on a workaround or an engine-side fix.

Apple Declared Age Range documentation:

https://developer.apple.com/documentation/DeclaredAgeRange

Additionally, could you share any plans or an estimated timeline for Xcode 26 support in the Unreal Engine 4.27-plus branch?

Our team also maintains legacy 4.27-based projects, and we need to understand the expected support window to ensure compliance across all affected products.

재현 방법
Environment

  • Xcode: 26.x (Issue reproduced across 26.0 → 26.2 Beta 2)
  • UE Version: Built from the release-5.7.0 tag

Steps to reproduce:

  1. Clone the branch at the release-5.7.0 tag from GitHub and generate an Installed Build.
  2. (Note: The crash also occurs even without using an Installed Build.)
  3. Open an existing project that previously worked correctly on Unreal Engine 5.6.1, and migrate it to 5.7.0.
  4. Refresh the Xcode project generated by Unreal Build Tool.
  5. Launch the project in Xcode.
  6. Run the application with Xcode debugging enabled.

Hi 재현 방법,

This is unfortunately a know issue with the Metal Toolchain updates introduced in Xcode 16.3 and newer generating incompatible metal libaries for iOS 15/16 devices. We are working with Apple for resolution, however, at the moment, the only know workaround is to disable metal libraries altogether and fall back to on device shader compilation from source. The issue is being tracked here: https://issues.unrealengine.com/issue/UE-333130.

Best regards.

1 Like

Hello Jacoby Stéphane,

(Just to clarify — my name is not “재현 방법” :blush: That text means “Reproduction Steps” in Korean, and it seems the support system automatically used that field as my display name. My actual name is hojong)

Thank you for your response.

I have one additional question:

In UE 5.7.0, how can I disable Metal libraries?

I could not find an option for disabling Metal entirely in Project Settings → Platforms → iOS.

I only see the Metal version selection options, but not a way to disable Metal library generation.

Could you please guide me on how to properly disable Metal in this version?

Thank you again for your help.

Hello Unreal_PC platform_client,

My apologies about your name. Turning off the bSharedMaterialNativeLibraries flag in Project Settings / Packaging will disable metallibs and should force text shaders. Please advise if that resolves for you. This is not optimal and we are also looking at the possibility of generating metallibs with older compatible versions of the Metal toolchain against newer Xcode 26 projects.

Best regards.

Hello All,

Same issue on iOS 15/16 running Xcode 26.3: serializedRequest, line 358: error ‘Corrupted library’

serializedRequest:358: failed assertion `Corrupted library’

I was hoping the new QFE (5.7.4) that was just released would fix the issue. Unfortunately does not seem to be the case.

Thank you

Ivan

Hi Ivan,

Unfortunately, this is actually an Apple issue that they do not plan to fix. It is related to the strip behaviour of the metal toolchain. You can try the workaround above or alternatively disable stripping (r.Shaders.Symbols=0) and build shaders against a pre-Xcode 16 version of the metal toolchains as follows:

[/Script/IOSRuntimeSettings.IOSRuntimeSettings]
MacMetalToolchainOverride=/Applications/Xcode_15.4.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/metal

for example.

Best regards

Thank you for your reply. Your previous recommendation did not work. I will try your most recent suggestion and report back. Thank you. Ivan