Our app has iOS 14.0 as the min. deployment target. We've been able to test perfectly well using the iOS 15.0 simulator, as well as an iOS 14.5 devices on release builds.
Yesterday, to address an iOS 14 visual bug, I tried building a debug build from Xcode on iOS 14 (both simulator and a real device) and it instantly crashed with the following error message:
Thread 1: signal SIGABRT
There was no line of our own app code executed - it crashed before hitting the breakpoint in func application(_ application: UIApplication, didFinishLaunchingWithOptions).
The console output was as follows:
dyld: Symbol not found: _$sSo22NSManagedObjectContextC8CoreDataE5fetchySayypGSo14NSFetchRequestCySo0gH6Result_pGKF
Referenced from: /Users/jacob/Library/Developer/CoreSimulator/Devices/F0DD4D51-D749-4A0D-B40D-1A70B2F0120B/data/Containers/Bundle/Application/0B1C5FF3-66F9-4046-807F-37A1C4773E70/Gener8.app/Gener8
Expected in: /usr/lib/swift/libswiftCoreData.dylib
dyld: launch, loading dependent libraries
DYLD_SHARED_CACHE_DIR=/Users/jacob/Library/Developer/CoreSimulator/Caches/dyld/21F2081/com.apple.CoreSimulator.SimRuntime.iOS-14-5.18E182
DYLD_ROOT_PATH=/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS 14.5.simruntime/Contents/Resources/RuntimeRoot
DYLD_LIBRARY_PATH=/Users/jacob/Library/Developer/Xcode/DerivedData/Gener8-ayxdgejxdmjsncfcxxrqtyrsroer/Build/Products/Debug-iphonesimulator:/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS 14.5.simruntime/Contents/Resources/RuntimeRoot/usr/lib/system/introspection
DYLD_INSERT_LIBRARIES=/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS 14.5.simruntime/Contents/Resources/RuntimeRoot/usr/lib/libBacktraceRecording.dylib:/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS 14.5.simruntime/Contents/Resources/RuntimeRoot/usr/lib/libMainThreadChecker.dylib:/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS 14.5.simruntime/Contents/Resources/RuntimeRoot/usr/lib/libMTLCapture.dylib:/Library/Developer/CoreSimul
Has anyone got an idea how I go about debugging this?
We are using core data in some parts of the app, hence the NSManagedObjectContext at the start of the error message.