奇怪的 Swift XCode '未定义符号' 错误
Posted
技术标签:
【中文标题】奇怪的 Swift XCode \'未定义符号\' 错误【英文标题】:Strange Swift XCode 'Undefined Symbols' errors奇怪的 Swift XCode '未定义符号' 错误 【发布时间】:2015-04-11 06:13:26 【问题描述】:我正在使用 Xcode 6.2 为扩展目标编译一些 swift 代码。我不断收到类似以下的错误:
Undefined symbols for architecture x86_64:
"__TFSSCfMSSFT21_builtinStringLiteralBp8byteSizeBw7isASCIIBi1__SS", referenced from:
__TFC23Hall_WatchKit_Extension16GlanceControllercfMS0_FT_S0_ in GlanceController.o
如果我声明了一些属性,它编译得很好,但是一旦我尝试使用字符串文字,我就会开始收到这些错误,所以即使是这样简单的代码也会导致错误:
class GlanceController: WKInterfaceController
var service = "somestring"
我更新到 XCode 6.3,现在,即使在一个完全空的实现中,我也会遇到如下错误:
Undefined symbols for architecture x86_64:
"__TFSsoi1aUSs17_RawOptionSetType_USs21BitwiseOperationsTypeSs9Equatable__FTQ_Q__Q_", referenced from:
__TTWVSC26NSKeyValueObservingOptionsSs21BitwiseOperationsType10FoundationFS0_oi1aUS0___fMQPS0_FTS2_S2__S2_ in GlanceController.o
我已经尝试了此线程中的所有建议:Swift beta 6 - Confusing linker error message 但没有任何帮助。
【问题讨论】:
Xcode 6.3 β2 (6D532l) 在尝试构建新创建的干净项目时给了我大量错误! 也发生在之前的 β1 中。 【参考方案1】:检查文件的“目标成员”是否合适。
【讨论】:
即使我创建了一个全新的 Swift 项目并尝试运行它,甚至没有在其中编写任何新代码,也会发生这种情况。 我推荐你下载 Xcode 6.1.1 最新版本。我猜你已经下载了 Xcode 6.3 beta 版本。如果您还没有将您的操作系统更新到优胜美地。【参考方案2】:我发现清除 Xcode 的 DerivedData
缓存为我解决了这个问题(尽管 Product > Clean 没有帮助)。
退出 Xcode 后,导航到 ~/Library/Developer/Xcode/DerivedData
并删除项目的缓存文件夹。您甚至可以删除整个 DerivedData
文件夹,当您重新打开它们时,它将为每个项目重新构建。
重新打开 Xcode,等待它将文件重新索引到它的核心内容,然后构建。
【讨论】:
这对您新创建的项目是否有帮助?即使在清除整个文件夹之后,我也看到了同样的情况。 是的。听起来我的问题很可能是由其他原因引起的,但出现了同样的错误。以上是关于奇怪的 Swift XCode '未定义符号' 错误的主要内容,如果未能解决你的问题,请参考以下文章
未定义的符号 Swift.UnsafeMutableBufferPointer