在链接使用SDK 3.0创建的静态库时,使用Base SDK 3.0构建iPhone SDK 2.x目标

pix*_*x0r 7 iphone xcode objective-c

我在使用iPhone SDK 3.0构建的静态库Pinch Analytics r64在我的应用程序中正确链接时遇到了问题,该应用程序正在针对iPhone OS 2.0.这似乎是一个相当普遍的问题,Pinch Analytics的网站甚至还有一整页专门回答这个问题.

基本上,他们说将项目的Base SDK设置为3.0,并将iPhone OS部署目标设置为SDK 2.0(或者您要定位的任何版本).我已经采取了这两个步骤,验证我没有覆盖目标设置中的任何项目设置,清理了我的目标,但我仍然收到以下链接器错误:

Undefined symbols:
"___restore_vfp_d8_d15_regs", referenced from: -[Beacon connectionDidFinishLoading:] in libPMAnalytics-r64.a(Beacon.o) -[Beacon connection:didFailWithError:] in libPMAnalytics-r64.a(Beacon.o)

"___save_vfp_d8_d15_regs", referenced from: -[Beacon connectionDidFinishLoading:] in libPMAnalytics-r64.a(Beacon.o) - libPMAnalytics-r64.a中的[Beacon connection:didFailWithError:](Beacon.o) - libPMAnalytics-r64.a中的[Beacon connection:didReceiveData:](Beacon.o)

等等

我来到我的智慧结束; 任何建议都会很棒!

pix*_*x0r 3

与 Pinch Media 团队发送几封电子邮件后,问题得到解决。基本上,您不应该使用下拉菜单来选择不同的 ACTIVE SDK

在“项目信息”中将“Base SDK”设置为“3.0”。在项目信息中将 iPhone OS 部署目标设置为 2.0(或您要定位的任何版本)。将设备/配置/目标下拉列表保留为 Base SDK (3.0),否则 Xcode 将使用与所选“Active SDK”关联的旧工具链。