请从以下错误中帮助我。
我正在使用第三方框架(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“_DTC_STROKE_JOIN_BEVEL”中的objc-class-ref,引自: + [DemoLineChart(Private)getRenderWithRender:]在DemoLineChart.o中:ld:未找到架构armv6的符号 collect2:ld返回1退出状态
答案 0 :(得分:18)
以下是我遇到此问题的方法:
我通过将它们拖到我的项目导航器中,从另一个项目中添加了.h
,.m
和NIB。 Xcode没有正确地将它们添加到Build Phases中。
我解决此问题的方法:
.m
文件添加到“编译源”(将其拖过,或使用+按钮).xib
添加到“复制捆绑资源”这对我很有帮助
答案 1 :(得分:2)
几个问题:你是否有外部lb拥有它自己的项目文件?如果是这样,请确保将其配置为正确构建到arm6和arm7。为主项目文件执行相同操作以获得良好的衡量标准。另外,你在哪个版本的XCOde?不同版本之间存在显着差异。
查看libs方案(取决于您使用的XCode的版本),并确保在iOS设备上正确配置以进行调试;我认为你正在构建自己的设备以进行调试:这个建议是因为:“文件是为存档而构建的,而不是被链接的架构(armv6)”
尝试上述每一项操作后,请务必在每次构建之前清理整个项目。
希望这会有所帮助。我觉得你的痛苦XCOde是邪恶的。
答案 2 :(得分:0)
我通过向目标添加缺席框架解决了这个问题 - >构建阶段 - >使用库链接二进制文件