【发布时间】:2011-05-09 17:20:42
【问题描述】:
我正在尝试使用 Xcode 4 构建基于 PhoneGap 的应用程序。由于 Xcode 4 没有 PhoneGap 项目模板,我使用 the handy web page 来创建项目。但是,我在构建时收到以下错误:
Undefined symbols for architecture armv7:
"_OBJC_METACLASS_$_PhoneGapDelegate", referenced from:
_OBJC_METACLASS_$_TestAppDelegate in TestAppDelegate.o
"_OBJC_CLASS_$_PhoneGapDelegate", referenced from:
_OBJC_CLASS_$_TestAppDelegate in TestAppDelegate.o
ld: symbol(s) not found for architecture armv7
collect2: ld returned 1 exit status
PhoneGap 应用程序的大部分 Cocoa Touch 代码构建为一个名为 PhoneGapLib 的库。应用程序项目引用PhoneGapLib 项目并依赖并链接到其产品PhoneGapLib.a。 PhoneGapDelegate 在 PhoneGapLib 中定义; TestAppDelegate 在主项目中定义。我已将主项目和 PhoneGapLib 项目的有效架构设置设置为“armv6 armv7 i386”。
我不知道是什么导致了上述错误。谁能破译它并告诉我应该查看哪些构建设置来解决它?
我找到了a Google Groups thread,其中作者通过使用 lipo 手动组合库的不同构建来解决类似的问题。如果可能的话,我真的很想避免这一步——这似乎是我应该能够通过在两个项目中正确组合构建设置来完成的事情。
感谢您的帮助!
【问题讨论】:
标签: iphone objective-c ios xcode4 cordova