【问题标题】:Project fails to build because KIF classes are missing由于缺少 KIF 类,项目无法构建
【发布时间】:2012-12-26 04:53:35
【问题描述】:

项目构建失败,因为缺少 KIF 类。

我正在尝试一个简单的应用程序,并严格遵循 github readme。此外,我已经仔细检查了阅读我关于这个问题的任何内容。我仍然无法让我的应用程序构建/运行测试。

谁能帮我解决这个问题?

谢谢。 阿山

错误:

ld: warning: ignoring file /Users/ahsan/Desktop/Others/LoginExampleKIF/libKIF.a, missing required architecture i386 in file /Users/ahsan/Desktop/Others/LoginExampleKIF/libKIF.a (2 slices)

Undefined symbols for architecture i386:

  "_OBJC_CLASS_$_KIFTestController", referenced from:
      _OBJC_CLASS_$_EXTestController in EXTestController.o

  "_OBJC_CLASS_$_KIFTestScenario", referenced from:
      objc-class-ref in EXTestController.o
      objc-class-ref in KIFTestScenario+EXAdditions.o
      l_OBJC_$_CATEGORY_KIFTestScenario_$_EXAdditions in KIFTestScenario+EXAdditions.o

  "_OBJC_CLASS_$_KIFTestStep", referenced from:
      objc-class-ref in KIFTestScenario+EXAdditions.o
      objc-class-ref in KIFTestStep+EXAdditions.o
      l_OBJC_$_CATEGORY_KIFTestStep_$_EXAdditions in KIFTestStep+EXAdditions.o

  "_OBJC_METACLASS_$_KIFTestController", referenced from:
      _OBJC_METACLASS_$_EXTestController in EXTestController.o

ld: symbol(s) not found for architecture i386

clang: error: linker command failed with exit code 1 (use -v to see invocation)

【问题讨论】:

  • 我在使用 KIF 时也遇到了问题,并仔细检查了自述文件。我最终从我的工作区中删除了 KIF 项目并再次添加它并开始工作。另外,您遇到了什么错误?
  • @JamesZaghini :添加了输出。 :-s (不过,lil 搞砸了格式!)。好的,让我删除 KIF 并重试。谢谢你的建议。但是,不。没有运气:(

标签: objective-c ios kif-framework


【解决方案1】:

从您的错误消息来看,您似乎正在尝试在模拟器上运行您的应用,但不是为 i386 架构构建的。

我刚刚从 github 上检查了 KIF,此时它还没有设置为为 i386 构建

将您的“架构”和“有效架构”设置为 i386、armv7 和 armv7s。然后清理并再次构建。您可能也需要为自己的应用程序目标执行此操作,但我假设您的应用程序也将设置为为 i386 构建,除非您将其删除。

告诉我你的进展:D

【讨论】:

  • 奇怪的是它对我有用,即使项目配置中唯一有效的架构是 armv7 和 armv7s。
猜你喜欢
  • 2021-11-11
  • 1970-01-01
  • 2018-08-10
  • 2022-01-02
  • 2019-10-22
  • 2013-07-01
  • 2022-10-24
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多