我的应用昨天运行得很好,没有任何错误或警告。但是当我今天尝试运行它时,构建失败了--我没有更改代码中的任何内容:
Undefined symbol: __swift_FORCE_LOAD_$_XCTestSwiftSupport
如何解决这个问题,为什么以前工作的时候会突然发生这样的事情?
这是我最近在使用XCode时经常遇到的一个问题。我的代码运行正常,没有任何错误,但是当我在不同的时间重新启动XCode时,它会随机地开始抛出错误--没有对实际代码进行任何修改。
我已经包括了一些照片和这些照片的全文:
InventoryApp 3 issues
Warning
Could not find or use auto-linked library 'XCTestSwiftSupport'
Could not find or use auto linked framework 'XCTest'
Error
Undefined symbol: __swift FORCE LOAD $ XCTestSwiftSupport
ld: warning: Could not find or use auto-linked library 'XCTestSwiftSupport'
ld: warning: Could not find or use auto-linked framework
'XCTest'
Undefined symbols for architecture arm64:
"__swift_FORCE_LOAD_$_XCTestSwiftSupport", referenced from:
__swift_FORCE_LOAD_$_XCTestSwiftSupport_$_inventoryApp in Button.o
__swift_FORCE_LOAD_$_XCTestSwiftSupport_$_inventoryApp in ViewModel.o
__swift_FORCE_LOAD_$_XCTestSwiftSupport_$_inventoryApp in Inventory.o
__swift_FORCE_LOAD_$_XCTestSwiftSupport_$_inventoryApp in AddView.o
__swift_FORCE_LOAD_$_XCTestSwiftSupport_$_inventoryApp in ScannerView.o
__swift_FORCE_LOAD_$_XCTestSwiftSupport_$_inventoryApp in RegisterView.o
__swift_FORCE_LOAD_$_XCTestSwiftSupport_$_inventoryApp in ContentView.o
...
(maybe you meant: __swift_FORCE_LOAD_$_XCTestSwiftSupport_$_inventoryApp)
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
5条答案
按热度按时间flvtvl501#
如果您将
到非测试包中的文件。
wlzqhblo2#
我通过导航到目标应用程序设置〉构建阶段〉将二进制文件与库链接〉添加链接库“XCTest.framework”来解决这个错误。
如果之后您的应用程序开始崩溃,则会中止并出现以下错误:
然后你可以看看这个线程上的建议:Xcode 5.0.2 dyld: Library not loaded: @rpath/XCTest.framework/Versions/A/XCTest
对我有效的解决方案是:导航至目标应用〉构建设置〉链接〉其他链接器标志〉编辑或添加-weak_framework“XCTest”
ilmyapht3#
这个错误今天随机开始在我的Xcode项目上发生。我更改了设置。
从“否”更改为“是”,生成成功。
编辑:...
如果项目创建时包含了测试目标,则默认情况下此设置为打开。在我的情况下,我相信我是在稍后添加了测试目标,因此此设置将为false。尽管如此,我不能说为什么它没有在我添加测试目标时立即中断。
请参阅:https://xcodebuildsettings.com
aoyhnmkz4#
以上都不适用于我。在我的例子中,有几个模拟文件同时针对框架和单元测试包。我只是取消了框架一号,以消除检查器上的错误。
rqdpfwrv5#
我通过导航到目标应用程序设置〉构建阶段〉将二进制文件与库链接〉添加链接库“XCTest.framework”来解决这个错误。
上述操作与上述解决方案完全相同,尽管出现了“库未加载”的问题。
我解决了“库未加载”的问题,通过设置框架为可选,而链接库。[输入图像描述在这里][1]
我在Xcode 13.2.1中使用它。