iOS 12.5.8 fails to bootstrap app

Hello, I released a new build for my app but it fails to run on iOS 12.5.8 (tested on iPad Air, iPhone 6, iPhone 5s). The launch storybard is shown, then the app stops abruptly. There is no crash log. It runs fine on iOS 13 or higher.

Xcode 26.3 was showing a call stack (something with UIView) that did not include any app code. Now with Xcode 26.4 (and its new command line tools) there is an info popup with a debug metadata dump. However, I don’t intend to focus on Xcode here because it officially does not support iOS 12. It’s ok if I cannot debug, I just want the app to run on the device like the previous build did. Since there is no crash log, and the console is showing a bootstrap error, I believe my app code has not been executed and is therefore not at fault.

  • Build 674 released on 23-Mar-2026: worked fine on iOS 12, built with Xcode 26.3
  • Build 675 released on 29-Mar-2026: Bootstrap error as described, with both Xcode 26.3 and 26.4

Deployment target = 12.4

Tried Instruments but it fails as soon as I hit record.

In the console I found BKSProcessErrorDomain code 1. Here on the forum I found a post where the cause was no internet access but my device does have internet access. I made only very little code changes to my app between 674 and 675, no storyboard updates. I get the impression the loader does not even begin to execute my code. At this point I wonder if:

  • some certificate has expired (see release dates above), or
  • if something is incompatible in my main storyboard (though I did not change anything there), or
  • the device ran out of memory (1 GB)

Note: The app has 4 targets:

  • main app target
  • framework
  • AU app extension
  • intents app extension

Thanks, Sven

PS: Misclicked subtopic which should have been General (sorry).

Here’s the redacted console excerpt:

standard	22:21:13.187990+0200	SpringBoard	Evaluate: making new window key: <SBMainSwitcherWindow: 0x159e5f640>, for reason: push
standard	22:21:13.188303+0200	SpringBoard	Removed: <FBUIApplicationSceneDeactivationAssertion: 0x283c9dfe0; reason: systemAnimation; all scene levels; hasPredicate: NO>
standard	22:21:13.198299+0200	assertiond	Submitting new job for "com.example.app" on behalf of <BKProcess: 0x141d15d50; SpringBoard; com.apple.springboard; pid: 48; agency: SystemShell; visibility: foreground; task: running>
standard	22:21:13.198867+0200	SpringBoard	Bootstrapping com.example.app with intent foreground-interactive
standard	22:21:13.201136+0200	assertiond	Submitted job with label: UIKitApplication:com.example.app[0x1d9f][58]
standard	22:21:13.201244+0200	SpringBoard	Icon touch canceled (tap gesture may still succeed): <private>
fehler	22:21:13.201329+0200	SpringBoard	[com.example.app] Bootstrap failed with error: <NSError: 0x283e4cd80; domain: BKSProcessErrorDomain; code: 1 (bootstrap-failed); reason: "Failed to start job">
fehler	22:21:13.201421+0200	SpringBoard	Bootstrapping failed for <FBApplicationProcess: 0x15d13b3e0; com.example.app; pid: -1> with error: Error Domain=BKSProcessErrorDomain Code=1 "Unable to bootstrap process with bundleID com.example.app" UserInfo={NSLocalizedDescription=Unable to bootstrap process with bundleID com.example.app, BKSProcessExitReason=0, NSLocalizedFailureReason=Failed to start job, NSUnderlyingError=0x283e4c5d0 {Error Domain=NSPOSIXErrorDomain Code=3 "No such process" UserInfo={BKLaunchdOperation=launch_get_running_pid_4SB, NSLocalizedDescription=Unable to get pid for label UIKitApplication:com.example.app[0x1d9f][58], BKLaunchdJobLabel=UIKitApplication:com.example.app[0x1d9f][58], NSLocalizedFailureReason=No such process}}, BKSProcessJobLabel=UIKitApplication:com.example.app[0x1d9f][58], BSErrorCodeDescription=bootstrap-failed}
standard	22:21:13.201507+0200	SpringBoard	Adding: <FBApplicationProcess: 0x15d13b3e0; com.example.app; pid: -1>
standard	22:21:13.201606+0200	SpringBoard	<FBApplicationProcess: 0x15d13b3e0; com.example.app; pid: -1> exited.
standard	22:21:13.202002+0200	assertiond	Unable to get pid for 'UIKitApplication:com.example.app[0x1d9f][58]': No such process (3)
fehler	22:21:13.202145+0200	assertiond	Failed to start job with error <NSError: 0x141e1aba0; domain: NSPOSIXErrorDomain; code: 3; reason: "No such process"> {
    description = "Unable to get pid for label UIKitApplication:com.example.app[0x1d9f][58]";
    failureReason = "No such process";
    userInfo = {
        BKLaunchdJobLabel = UIKitApplication:com.example.app[0x1d9f][58];
        BKLaunchdOperation = launch_get_running_pid_4SB;
    }
}
standard	22:21:13.202238+0200	assertiond	Deleted job with label: UIKitApplication:com.example.app[0x1d9f][58]
standard	22:21:13.202804+0200	SpringBoard	Removing: <FBApplicationProcess: 0x15d13b3e0; com.example.app; pid: -1>
standard	22:21:13.221231+0200	SpringBoard	Application process state changed for com.example.app: <SBApplicationProcessState: 0x28336f0a0; pid: -1; taskState: Not Running; visibility: Unknown>
standard	22:21:13.221566+0200	SpringBoard	Process exited: <FBApplicationProcess: 0x15d13b3e0; com.example.app; pid: -1> -> <FBApplicationProcessExitContext: 0x283e37b10; exitReason: (none); terminationReason: (none)> {
    stateAtExit = <FBProcessState: 0x28337c760; pid: -1; taskState: Unknown; visibility: Unknown>;
}
Answered by DTS Engineer in 882869022

Hello @Biochili

There is some related discussion around this issue over on this thread here: https://developer.apple.com/forums/thread/821370?answerId=882822022#882822022

Thank you for reporting,

 Travis

Addendum:

I’ve created a simple minimal UIKit app that produces the same bootstrap error on the iPhone 5s with iOS 12.5.8. Launch storyboard shows, then suddenly disappears.

The project is configured for automatically managed signing. My provisioning team profile expires in 11 months, my dev certificate in Oct 2026, and all other items in the details have checkmarks.

I'm seeing exactly the same crash, same source code, same Xcode version two weeks ago did not have the issue. I've pushed a new build 2 days ago and users with iOS 12 are getting a crash on launch.

The same for Organic Maps: internal CI TestFlight build on March 25 works on iOS 12 device, the same binary with a few string resource changes, built on March 26 does not work. Built with the frozen version of Xcode 26.2.

That implies some kind of Apple involvement when builds are uploaded.

Accepted Answer

Hello @Biochili

There is some related discussion around this issue over on this thread here: https://developer.apple.com/forums/thread/821370?answerId=882822022#882822022

Thank you for reporting,

 Travis

Thanks @Manuel_Apps and @BioDranik for your metoo’s. In the meantime I have received a response from dev support. They gave me the same answer that is found in the thread pointed to by @DTS Engineer .

This is the tech part of the answer:

When you submit to the App Store, Apple modifies your binary. They strip your signature, encrypt the binary and re-sign it. This encryption alters the Mach-O file's page alignments and load commands.

Nothing I can do about that. I’m fine with progress but I wish Xcode would have somehow prevented me from using the unsupported deployment target. Ever since Xcode 16 (which also does not support iOS 12) I thought my target was ok.

So I will bump the target to iOS 15 (for now, in the future possibly higher). Since my app in the App Store is defunct for iOS 12 users I will upload a build with target iOS 15 and then mark the broken build as unavailable (App Connect > Pricing and Availability). This way the legacy users will get the last working version.

iOS 12.5.8 fails to bootstrap app
 
 
Q