7

当我在 iOS 5.1 模拟器上运行我的项目时,它显示

yld: lazy symbol binding failed: Symbol not found: _objc_setProperty_nonatomic_copy
  Referenced from: /Users/apple/Library/Application Support/iPhone Simulator/5.1/Applications/3A003E5F-2C66-494F-BCC1-C3EE82F01464/dogTree.app/dogTree
  Expected in: /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.1.sdk/System/Library/Frameworks/Foundation.framework/Foundation

而且我没有 5.1 SDK。但是为什么库搜索路径是 5.1 而不是 6.0?

我所有的项目都在 iOS 6.0 设备上运行,但是当我在 iOS 5.0 或 5.1 设备上安装时,它崩溃并显示如下消息。

请给我一些帮助,iOS 5.1 SDK 是否需要运行 iPhone 5.1 模拟器?

4

3 回答 3

22

我遇到了同样的问题,发现我只是忘记在包含的项目中更改目标平台。Xcode 在升级时会自动将目标切换到最新的 iOS。只需更改包含项目的目标即可解决此问题。

于 2012-10-03T18:25:27.637 回答
3

我遇到了类似的问题,并通过将每个静态库所依赖的部署目标设置为 4.3(与我的应用程序的最低版本相同)来解决。
我发现依赖的静态库默认是6.0,当需要低版本的兼容性时,这一定会导致一些库丢失。

于 2012-10-05T16:32:28.913 回答
2

对于 pod 等库,它位于 iOS 部署目标的构建设置中。

于 2013-06-21T13:38:46.557 回答