这是它显示的警告:
选项'-F / Applications / Xcode-beta.app / Contents / Developer / Platforms / iPhoneOS.platform / Developer / SDKs / iPhoneOS9.0.sdk / Developer / Library / Frameworks'找不到目录
任何人都可以帮助解决警告吗?
继我的Xcode项目的迁移,从Xcode 6.4到Xcode 7,我得到测试目标下面(编译后)的警告信息:
directory not found for option '-F/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator9.0.sdk/Developer/Library/Frameworks'
实际上我在比较新项目和旧项目时找到了一些东西......
在旧项目中,警告仅由我的项目的测试目标产生。在“搜索路径”下,我发现它包含“框架搜索路径”下的两个项目:
$(SDKROOT)/Developer/Library/Frameworks
$(inherited)
新项目使“框架搜索路径”保持空白。
删除旧项目中的条目然后删除警告。
笔记:
我没有详尽地比较设置,因此可能存在其他差异。
此外,如果有一天您再次遇到以下两条警告消息之一,请记住您必须这样做:如果警告是针对库搜索路径选项'-L/...'
,请删除那里的内容。但是,如果警告是针对框架搜索路径的选项'-F/...'
,请删除那里的内容。
根据错误消息,听起来第一个业务是使目标的路径理顺。您可以编辑路径,如this StackOverflow question的答案中所示。如果您不确定哪个目标产生了错误,请务必检查所有目标的路径 - 在将项目升级到Xcode 7 beta之后,这让我有点兴奋; FRAMEWORK_SEARCH_PATHS中有一个需要删除的测试目标的路径。那里的路径正是你报告的路径获得警告;删除路径消除它。
King-Wizard基本上是正确的,详细说明 -
Xcode 7正在寻找一个不存在的路径中的测试框架XCtest.framework
。 $(SDKROOT)/Developer/Library/Frameworks
在“搜索路径 - >框架搜索路径”下设置的路径正在寻找/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS9.0.sdk/Developer/Library/Frameworks
中的框架,该框架不是有效路径。您可以删除行$(SDKROOT)/Developer/Library/Frameworks
以删除错误,但仍然可以运行测试。
对于那些好奇的人来说,'XCTest.framework'的正确路径是/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/Frameworks
。
我希望有所帮助。