由于缺少 KIF 类,项目无法构建

Posted

技术标签:

【中文标题】由于缺少 KIF 类,项目无法构建【英文标题】:Project fails to build because KIF classes are missing 【发布时间】: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 并重试。谢谢你的建议。但是,不。没有运气:( 【参考方案1】:

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

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

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

告诉我你的进展:D

【讨论】:

奇怪的是它对我有用,即使项目配置中唯一有效的架构是 armv7 和 armv7s。

以上是关于由于缺少 KIF 类,项目无法构建的主要内容,如果未能解决你的问题,请参考以下文章

由于缺少 Ivy 模块,无法创建 IntelliJ Scala 项目

Unity 2020.1.8f1 无法构建 xcode 项目,因为缺少 plist 键值对

由于 pom.xml 中的错误,无法使用 Maven 运行构建

由于缺少 tools.jar,Maven AspectJ 插件无法使用 Java 9 构建

由于缺少依赖性,无法构建RabbitMQ插件

由于缺少未丢失的程序集引用,Visual Studio拒绝构建项目