119

这是它显示的警告:

找不到选项'-F/Applications/Xcode-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS9.0.sdk/Developer/Library/Frameworks'的目录“

任何人都可以帮助解决警告吗?

4

4 回答 4

225

这就是我解决这个问题的方法

在将我的 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/...'“框架搜索路径”选项的,请删除那里的内容。

于 2015-09-17T00:44:26.247 回答
19

根据错误消息,听起来首要任务是理顺目标的路径。您可以编辑此 StackOverflow 问题的答案中所示的路径。如果您不确定是哪个产生了错误,请务必检查所有目标的路径 --- 在将项目升级到 Xcode 7 测试版后,这让我有点困惑;FRAMEWORK_SEARCH_PATHS 中有一个路径需要删除测试目标。那里的路径正是您报告收到警告的路径;删除路径消除了它。

于 2015-06-15T18:38:04.403 回答
16

King-Wizard基本上是正确的,详细说明一下 -

XCtest.frameworkXcode 7 正在一条不存在的路径中寻找您的测试框架。在“搜索路径 -> 框架搜索路径”下设置的$(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为那些好奇的人准备的。

我希望这会有所帮助。

于 2015-09-27T22:02:32.937 回答
3

我在 Xcode 9.2 中遇到了同样的错误,这是我的解决方案,无需手动操作:

  1. 在 Project Navigator 中单击您的项目
  2. 转到目标并单击MyProjectNameTest
  3. 点击构建设置并搜索“<strong>Framework Search Paths”</li>
  4. Framework Search Paths下,删除路径并保留“$(inherited)”。

在此处输入图像描述

对于那些有以下错误的人:

未找到选项“-L/...”的目录</p>

这意味着这是一个库错误,因此您可以尝试按照以下步骤操作:

  1. 单击您的项目(目标)
  2. 点击Build Settings,搜索“Library Search Paths”</li>
  3. 在 Library Search Paths 下,删除路径并保留“$(inherited)”</li>
于 2017-12-29T15:12:35.160 回答