没有为架构armv6找到的符号

San*_*ram 5 objective-c armv7 armv6 ios4

请从下面的错误帮助我.

我正在使用第三方框架(libIPhonecharting)处理图形,每个东西在模拟器中工作正常,但是当我尝试构建.app文件以在IPAD设备中安装时,我收到以下错误消息.

忽略文件/Users/xyz/Desktop/xyzIPAD/library/4.0/Release-iphoneos/libIPhoneCharting.a,文件是为归档而构建的,而不是被链接的体系结构(armv6)

体系结构armv6的未定义符号:"_ OBJC_CLASS _ $ _ DTCStroke",引自:DemoLineChart.o中的objc-class-ref"_OBJC_CLASS _ $ _ IPCBar3DChart",引自:DemoBar3DChart.o中的objc-class-ref"_OBJC_CLASS _ $ _ IPCLineChart",引用自:DemoLineChart.o中的objc-class-ref"_ OBJC_CLASS _ $ _ DTCDefaultCategoryDataset",引自:DemoBar3DChart.o中的objc-class-ref,DemoLineChart.o中的objc-class-ref"_DTC_STROKE_CAP_SQUARE",引用自:+ [DemoLineChart(Private) getRenderWithRender:]在DemoLineChart.o"_ OBJC_CLASS _ $ _ IPCTitle"中,引用自:DemoBar3DChart.o中的objc-class-ref,在DemoLineChart.o中的objc-class-ref"_DTC_STROKE_JOIN_BEVEL",引自:+ [DemoLineChart(Private)getRenderWithRender:]在DemoLineChart.o ld:找不到架构armv6的符号collect2:ld返回1退出状态

Him*_*tri 18

这是我遇到这个问题的方法:

我通过将它们拖到我的项目导航器中.h,.m从另一个项目中添加了一个和NIB.Xcode没有正确地将它们添加到Build Phases中.

我解决这个问题的方法:

  • 转到导航器菜单中的目标
  • 单击"Build Phases"选项卡
  • .m文件添加到"编译源"(将其拖过,或使用+按钮)
  • 添加.xib到"复制捆绑资源"
  • 清洁和建造

它对我很有用,非常感谢你


mdo*_*ick 2

有几个问题:您的外部实验室有自己的项目文件吗?如果是这样,请确保它已配置为正确构建到arm6和arm7。对您的主项目文件执行相同的操作以达到良好的效果。另外,你用的是哪个版本的 XCOde?不同版本之间存在显着差异。

查看库方案(取决于您使用的 XCode 版本)并确保其配置正确,以便在 iOS 设备上进行调试;我假设您正在构建自己的设备以进行调试:此建议是因为:“文件是为存档而构建的,而不是正在链接的体系结构(armv6)”

尝试完所有这些操作后,请务必在每次构建之前清理整个项目。

希望这可以帮助。我觉得你的痛苦 XCOde 是邪恶的。