2012-10-02 81 views
7

找到SDK当我的iOS 5.1模拟器上运行我的项目,它显示程序的iOS 5.1设备上运行,不能在Xcode 4.5

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模拟器?

回答

22

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

+0

我应该改变什么目标? –

3

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

2

对于库(如Pod),它位于iOS Deployment Target的构建设置中。

相关问题