单元测试 Xcode 4 的链接器错误

Posted

技术标签:

【中文标题】单元测试 Xcode 4 的链接器错误【英文标题】:Linker error for unit test Xcode 4 【发布时间】:2012-02-10 11:57:23 【问题描述】:

我的应用程序在我运行时构建良好,并且单元测试也构建良好

当我为 CGAffineTransform 添加一些代码时,单元测试失败(应用程序仍然正常)

模拟器和设备的行为相同

错误信息:

Undefined symbols for architecture i386:
  "_CGAffineTransformMakeTranslation", referenced from:
      -[PhysicsObject hasPoint:] in PhysicsObject-23B4A02B8F0621AD.o
  "_CGAffineTransformMakeRotation", referenced from:
      -[PhysicsObject hasPoint:] in PhysicsObject-23B4A02B8F0621AD.o
  "_CGAffineTransformConcat", referenced from:
      -[PhysicsObject hasPoint:] in PhysicsObject-23B4A02B8F0621AD.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)

我尝试过来自

的建议

http://twobitlabs.com/2011/06/adding-ocunit-to-an-existing-ios-project-with-xcode-4/ http://sealedabstract.com/code/tired-of-getting-mach-o-linker-errors-when-unit-testing/ Apple Mach-O Linker Error when compiling for device

没有任何效果:(我怀疑这与一个特别是没有找到的框架有关。我似乎无法确定是哪个。非常感谢帮助。

【问题讨论】:

【参考方案1】:

前缀_CG是CoreGraphics.framework

【讨论】:

以上是关于单元测试 Xcode 4 的链接器错误的主要内容,如果未能解决你的问题,请参考以下文章

Xcode 单元测试 - 仅为设备构建时出现链接错误

由于苹果链接器错误,应用程序重命名后单元测试无法运行

谷歌单元测试框架的链接器错误

测试驱动开发 (TDD):在 Xcode 4 中编写单元测试

使用 URLRequestConvertible 的单元测试中的链接错误

Xcode 9.4 未显示单元测试