I build app success full, but app is crash when it's install and start on simulator, please help to resolve the issue. xcode version 16.3
dyld`__abort_with_payload: Thread 1: signal SIGABRT
Console error log: dyld[27267]: Symbol not found: _$sSo18WKPDFConfigurationC6WebKitE4rectSo6CGRectVSgvs Referenced from: <9ED011A5-B4BE-3B0B-98C6-0AFAF76A5B6C> ..../Library/Developer/CoreSimulator/Devices/C94520D8-031D-4D91-8050-859E0951D1A6/data/Containers/Bundle/Application/522BF7A2-7633-4FF1-BA02-130727B8E65C/App.app/Frameworks/flutter_inappwebview_ios.framework/flutter_inappwebview_ios Expected in: <0085D0EC-09E4-3699-ACE9-9B0C20B090BB> /Library/Developer/CoreSimulator/Volumes/iOS_22C150/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS 18.2.simruntime/Contents/Resources/RuntimeRoot/System/Library/Frameworks/WebKit.framework/WebKit Symbol not found: _$sSo18WKPDFConfigurationC6WebKitE4rectSo6CGRectVSgvs Referenced from: <9ED011A5-B4BE-3B0B-98C6-0AFAF76A5B6C> ..../Library/Developer/CoreSimulator/Devices/C94520D8-031D-4D91-8050-859E0951D1A6/data/Containers/Bundle/Application/522BF7A2-7633-4FF1-BA02-130727B8E65C/App.app/Frameworks/flutter_inappwebview_ios.framework/flutter_inappwebview_ios Expected in: <0085D0EC-09E4-3699-ACE9-9B0C20B090BB> /Library/Developer/CoreSimulator/Volumes/iOS_22C150/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS 18.2.simruntime/Contents/Resources/RuntimeRoot/System/Library/Frameworks/WebKit.framework/WebKit dyld config: DYLD_SHARED_CACHE_DIR=.../Library/Developer/CoreSimulator/Caches/dyld/24D81/com.apple.CoreSimulator.SimRuntime.iOS-18-2.22C150 DYLD_ROOT_PATH=/Library/Developer/CoreSimulator/Volumes/iOS_22C150/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS 18.2.simruntime/Contents/Resources/RuntimeRoot DYLD_LIBRARY_PATH=...../Library/Developer/Xcode/DerivedData/App-fdpvmjxapalesmhcoroqmpqwlxxm/Build/Products/Debug-iphonesimulator:/Library/Developer/CoreSimulator/Volumes/iOS_22C150/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS 18.2.simruntime/Contents/Resources/RuntimeRoot/usr/lib/system/introspection DYLD_INSERT_LIBRARIES=/Library/Developer/CoreSimulator/Volumes/iOS_22C150/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS 18.2.simruntime/Contents/Resources/RuntimeRoot/usr/lib/libLogRedirect.dylib:/Library/Developer/CoreSimulator/Volumes/iOS_22C150/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS 18.2.simruntime/Contents/Resources/RuntimeRoot/usr/lib/libBacktraceRecording.dylib:/Library/Developer/CoreSimulator/Volumes/iOS_22C150/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS 18.2.simruntime/Contents/Resources/RuntimeRoot/usr/lib/libMainThreadChecker.dylib:/usr/lib/libRPAC.dylib:/Library/Developer/CoreSimulator/Volumes/iOS_22C150/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS 18.2.simruntime/Contents/Resources/RuntimeRoot/usr/lib/libViewDebuggerSupport.dylib DYLD_FRAMEWORK_PATH=.....Library/Developer/Xcode/DerivedData/App-fdpvmjxapalesmhcoroqmpqwlxxm/Build/Products/Debug-iphonesimulator DYLD_FALLBACK_FRAMEWORK_PATH=/Library/Developer/CoreSimulator/Volumes/iOS_22C150/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS 18.2.simruntime/Contents/Resources/RuntimeRoot/System/Library/Frameworks DYLD_FALLBACK_LIBRARY_PATH=/Library/Developer/CoreSimulator/Volumes/iOS_22C150/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS 18.2.simruntime/Contents/Resources/RuntimeRoot/usr/lib
aarozco wrote:
are you able to reproduce on iOS 18.2
Ah, I missed that point. Thanks for bringing it to my attention.
Note It’s better to reply as a reply, rather than in the comments; see Quinn’s Top Ten DevForums Tips for this and other titbits.
I just created a new project from a template and added a button that calls this func:
Cool. I was able to distill this down even further, with a new app and a button that calls this:
func test() {
let config = WKPDFConfiguration()
print(config.rect ?? .zero)
}
As to what’s going on here, as far as I can tell this is a bug in the iOS simulator SDK [1] and I encourage you to file it as such.
Please post your bug number, just for the record.
Share and Enjoy
—
Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"
[1] I took my app and ran it on the iOS 18.4 simulator. That worked. I then ran it on the iOS 18.0 simulator and got this:
dyld[38131]: Symbol not found: _$sSo18WKPDFConfigurationC6WebKitE4rectSo6CGRectVSgvg
Referenced from: <…/Test780782.debug.dylib
Expected in: <…/WebKit.framework/WebKit
The missing symbol is the getter for the rect property:
% swift demangle '_$sSo18WKPDFConfigurationC6WebKitE4rectSo6CGRectVSgvg'
_$sSo18WKPDFConfigurationC6WebKitE4rectSo6CGRectVSgvg ---> (extension in WebKit):__C.WKPDFConfiguration.rect.getter : __C.CGRect?
That symbol is present in the iOS 18.4 simulator:
% nm "/Library/Developer/CoreSimulator/Volumes/iOS_22E238/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS 18.4.simruntime/Contents/Resources/RuntimeRoot/System/Library/Frameworks/WebKit.framework/WebKit" | grep WKPDFConfiguration
…
0000000000de12f9 S $ld$previous$/usr/lib/swift/libswiftWebKit.dylib$$7$10.16$15.4$_$sSo18WKPDFConfigurationC6WebKitE4rectSo6CGRectVSgvg$
…
000000000000312c T _$sSo18WKPDFConfigurationC6WebKitE4rectSo6CGRectVSgvg
…
but not present in the iOS 18.0 one:
% nm "/Library/Developer/CoreSimulator/Volumes/iOS_22A3351/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS 18.0.simruntime/Contents/Resources/RuntimeRoot/System/Library/Frameworks/WebKit.framework/WebKit" | grep WKPDFConfiguration
… no reference to _$sSo18WKPDFConfigurationC6WebKitE4rectSo6CGRectVSgvg …
The reason for that relates to the second symbol in the iOS 18.4 output, that is:
$ld$previous$/usr/lib/swift/libswiftWebKit.dylib$$7$10.16$15.4$_$sSo18WKPDFConfigurationC6WebKitE4rectSo6CGRectVSgvg$
I’m not sure if that symbol format is documented anywhere, but it’s pretty easy to understand:
-
$ld$previous$indicates that the symbol moved into this library from some other library. -
/usr/lib/swift/libswiftWebKit.dylibis the original library. -
7is the platform, which in this case isPLATFORM_IOSSIMULATORas defined in<mach-o/loader.h>. -
10.16and15.4is the range of OS releases where the symbol was present in that other library. Note that this is a half closed range, that is10.16 ..< 15.4. -
_$sSo18WKPDFConfigurationC6WebKitE4rectSo6CGRectVSgvgis the symbol name.
This symbol tells the static linker that the rect getter moved from the WebKit Swift overlay (libswiftWebKit.dylib) into the WebKit framework proper in iOS 18.4. Except it doesn’t. Because that the range is the macOS range [2], not the iOS range. For iOS, and hence the iOS simulator, I’d expect to see 14.0 and 18.4. So, because my app’s deployment target is iOS 18.0, it doesn’t fall into that range, so the static linker records a reference to the framework rather than the overlay, and thus the dynamic linker is unable to find the symbol.
Amusingly, if I change my app’s deployment target to iOS 15.0, it launches, because iOS 15.0 is less than macOS 15.4 (-: Needless to say, that’s not a great workaround.
[2] In this context, 10.16 is macOS 11.