2016-09-14 90 views
4

更新到Xcode 8,在iOS 8和iOS10下运行我的应用程序,崩溃,但iOS9和iOS10没有问题。Xcode 8,具有崩溃的iOS 8模拟器:“dyld:懒惰符号绑定失败:找不到符号:_objc_unsafeClaimAutoreleasedReturnValue”

“使dyld:延迟符号绑定失败:找不到符号: _objc_unsafeClaimAutoreleasedReturnValue从引用:**预计于:/库/开发商/ CoreSimulator /概况/运行时/ iOS的 8.1.simruntime /内容/资源/ RuntimeRoot /usr/lib/libobjc.A.dylib

使dyld:找不到符号:_objc_unsafeClaimAutoreleasedReturnValue
从引用:**预期: /库/开发商/ CoreSimulator /概况/运行时/ iOS的 8.1.simruntime /目录/Resources/RuntimeRoot/usr/lib/libobjc.A.dylib“

+0

你好@xojiang,你能找到解决办法吗?我面临着完全相同的问题! –

回答

9

如果您在主项目下有任何子项目,这可能发生的原因之一是一个或多个子项目的“部署目标”高于主项目。

例如,如果您的主项目的部署目标为8.0,则将所有子项目的部署目标设置为8.0。 我认为这会解决你的问题。让我知道,如果它确实如此。干杯。

+0

感谢您的建议。最后我们发现原因是有些子项目会覆盖'+(void)load'方法。只需修复它并没有问题。 –

+0

@xojiangYang的加载方法有什么问题? – manroe

3

升级到Xcode 8后,我遇到了完全相同的问题,正如@Shaggy指出的,在我的情况下,它是由依赖项目中的部署目标设置为9.3而我的主项目的部署目标为8.0。

要增加更多内容,查看导致崩溃的堆栈跟踪以查明项目可能是有用的,特别是当您有许多相关项目时。就我而言,我发现某些函数是从一个从属库项目中调用的,确实是导致该问题的特定项目。

相关问题