- We need the following patch to make it compile on the latest Xcode.
// objc-os.h
+ #include <utility>
- Once we run objc-inspect, we'll get a crash on
_objc_init -> _dyld_objc_notify_register.
The abort message is "_dyld_objc_notify_register is unsupported"
Checking the latest dyld's source code, the API is still there and suggesting we move to use "_dyld_objc_register_callbacks".
https://github.com/apple-oss-distributions/dyld/blob/d1a0f6869ece370913a3f749617e457f3b4cd7c4/dyld/DyldAPIs.cpp#L876-L877
// FIXME: Remove this once libobjc moves to _dyld_objc_register_callbacks()
The latest SDK's dyld has changed it and make it abort here.
Checking the latest objc code, they did change to use _dyld_objc_register_callbacks here.
https://github.com/apple-oss-distributions/objc4/blob/196363c165b175ed925ef6b9b99f558717923c47/runtime/objc-os.mm#L934
So the final answer is we need to update the objc source to debug it on the latest OS due to the API change in dylb.
// objc-os.h + #include <utility>_objc_init -> _dyld_objc_notify_register.The abort message is "_dyld_objc_notify_register is unsupported"
Checking the latest dyld's source code, the API is still there and suggesting we move to use "_dyld_objc_register_callbacks".
The latest SDK's dyld has changed it and make it abort here.
Checking the latest objc code, they did change to use
_dyld_objc_register_callbackshere.https://github.com/apple-oss-distributions/objc4/blob/196363c165b175ed925ef6b9b99f558717923c47/runtime/objc-os.mm#L934
So the final answer is we need to update the objc source to debug it on the latest OS due to the API change in dylb.