我已经尝试了下面链接中的每一个建议,但没有任何解决方案。 (Xcode 5.0.1)
d: file not found: /Users/hooman/Library/Developer/Xcode/DerivedData/F11i-erlvxsqudsegbmckzxfxnvnxxumb/Build/Products/Debug-iphonesimulator/F11i.app/F11i
clang: error: linker command failed with exit code 1 (use -v to see invocation)
奇怪的是,当我查看这条路径时:
/Users/hooman/Library/Developer/Xcode/DerivedData/F11i-erlvxsqudsegbmckzxfxnvnxxumb/Build/Products/Debug-iphonesimulator/
我看到两个文件的项目名称不同(我认为是以前的名称):
F09.app
F09.app.dSYM
但 XCODE 似乎正在照顾
F11i.app
F11i.app.dSYM
我可以在 XCODE 中的哪里设置这些名称以便再次编译? (我检查了 git,并且项目文件已恢复,没有其他任何可能影响此的情况)
非常感谢
最佳答案
如果您想构建一个纯粹的单元测试,只测试一个类,而与使用该类的应用程序无关,那么您通常不会设置“单元测试”目标。为了正确构建单元测试包,您需要包含要测试的模块,并可能链接到所需的任何其他框架或库。这种测试将独立于您的应用程序运行。
如果您想测试应用程序的多个方面,您可以设置“单元测试目标”。这将构建应用程序可执行文件,然后构建仅包含单元测试代码的测试包。在测试过程中,“测试代码”将被“注入(inject)”到应用程序可执行文件中。请注意,这种测试将启动您的应用程序。
您可以在目标编辑器的“常规”选项卡中设置单元测试包的“目标”:
在左侧导航区域中选择项目,在目标编辑器中选择单元测试目标,选择“常规”选项卡,从弹出窗口中选择一个目标,或“无”。
如果您想将单元测试代码注入(inject)到正在运行的应用程序中,您可能还需要调整这些设置(注意:Xcode 已将其设置为默认值):
打开方案编辑器:选择“项目”,然后命令“产品”->“方案”->“YourProject”。
然后,选择“Build”方案,检查“Targets”列表中是否包含相应的Unit Test目标。还要检查是否为单元测试的目标设置了复选标记“测试”。
在目标编辑器中,选择“单元测试”,然后选择“构建阶段”选项卡。检查您是否已将单元测试的目标添加为“目标依赖项”。
关于ios - 删除 DerivedData 文件夹后,单元测试无法编译,出现 'Apple Mach-O Linker' 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19764818/