gpt4 book ai didi

ios - Xcode 6.1 中的 Mach-O 链接器错误

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:17:03 25 4
gpt4 key购买 nike

我仅在 Xcode 6.1 中收到以下链接器错误,Xcode 6.01 工作正常:

Undefined symbols for architecture x86_64:
"__TWvdvC7Bamberg18TourViewController2mmT_", referenced from:
__TFC7Bamberg18TourViewControllerm2mmT_ in tours.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

现在我知道标准建议了。我已经尽了最大的努力:

  • 清理项目和构建文件夹
  • 删除组织者和开发者文件夹中的派生数据
  • 从模拟器和设备中删除以前版本的应用程序
  • 重置模拟器
  • 将“仅构建事件架构”设置为是/否
  • 研究编译器和架构设置
  • 添加每一个可以想象的框架(包括全部添加)
  • 确保所有实现文件都包含在“编译源”中
  • 我什至在 XCode 6.1 中重新创建了整个项目,以确保它不是一些隐藏的错误派生数据问题

最后,我设法将问题的根源指向一个导入的 Objective C 类,该类已正确桥接 - 当我不使用此类时错误消失了:( https://github.com/mrcrow/MRoundedButton )

如果我直接打开6.1那个类的demo工程,是可以正常运行的。因此,我认为这一定是该类在桥接时与我的特定代码发生冲突,或者该类与 swift 代码一般存在桥接错误。

非常感谢任何帮助。

最佳答案

您的 Swift 代码似乎有问题或触发了 Swift 编译器中的错误。您的链接器提示的符号是 Swift 符号(由 __T 前缀标识)。当传递给 swift-demangle 工具时,符号转换为:

_TFC7Bamberg18TourViewControllerm2mmT_ ---> Bamberg.TourViewController.mm.materializeForSet : ()
_TWvdvC7Bamberg18TourViewController2mmT_ ---> direct field offset for Bamberg.TourViewController.mm : ()

因此,在您的 TourViewController 中,您似乎引用了一个字段 mm,但链接器找不到它。也许您可以重写/重组您的代码来避免/修复这个问题。

关于ios - Xcode 6.1 中的 Mach-O 链接器错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26490677/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com