Xcode7 库搜索路径警告
Xcode 7 Library search path warning
这是它显示的警告:
directory not found for option '-F/Applications/Xcode-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS9.0.sdk/Developer/Library/Frameworks' "
谁能帮忙解决这个警告?
根据错误消息,听起来首要任务是理顺目标的路径。您可以编辑 this Whosebug question 的答案中显示的路径。如果您不确定是哪个目标产生了错误,请务必检查所有目标的路径 --- 在将项目升级到 Xcode 7 beta 后,这让我有些困惑; FRAMEWORK_SEARCH_PATHS 中有一个需要删除的测试目标路径。那里的路径正是您报告收到警告的路径;删除路径消除了它。
我就是这样解决这个问题的
进一步将我的 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'
实际上我在比较新项目和旧项目时发现了一些东西...
在旧项目中,警告仅由我项目的测试目标产生。在 'Search Paths' 下,我发现它包括 'Framework Search Paths':
下的两个项目
$(SDKROOT)/Developer/Library/Frameworks
$(inherited)
新项目将 'Framework Search Paths' 保留为空。
删除我的旧项目中的那些条目然后删除警告。
备注:
我没有详尽地比较设置,因此可能存在其他差异。
此外,以防万一有一天您再次遇到以下两个警告消息之一,请记住您必须这样做:如果警告是针对选项 '-L/...'
即 Library Search Paths,删除那里的东西。但是,如果警告针对选项 '-F/...'
,即框架搜索路径,请删除那里的内容。
King-Wizard基本正确,再详细一点-
Xcode 7 正在不存在的路径中寻找您的测试框架 XCtest.framework
。 $(SDKROOT)/Developer/Library/Frameworks
在 'Search Paths -> Framework Search Paths' 下设置的路径正在寻找 /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
对于那些好奇的人。
希望对您有所帮助。
我在 Xcode 9.2 中遇到了同样的错误,这是我没有手动操作的解决方案:
- 在项目导航器中单击您的项目
- 转到目标并单击 MyProjectNameTest
- 单击构建设置并搜索“框架搜索路径”
- 在 Framework Search Paths 下,删除路径并保留“$(inherited)”。
对于那些有以下错误的人:
directory not found for option ‘-L/…
这意味着这是一个库错误,因此您可以尝试按照以下步骤操作:
- 点击您的项目(目标)
- 点击构建设置,搜索“库搜索路径”
- 在库搜索路径下,删除路径并保留“$(inherited)”
这是它显示的警告:
directory not found for option '-F/Applications/Xcode-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS9.0.sdk/Developer/Library/Frameworks' "
谁能帮忙解决这个警告?
根据错误消息,听起来首要任务是理顺目标的路径。您可以编辑 this Whosebug question 的答案中显示的路径。如果您不确定是哪个目标产生了错误,请务必检查所有目标的路径 --- 在将项目升级到 Xcode 7 beta 后,这让我有些困惑; FRAMEWORK_SEARCH_PATHS 中有一个需要删除的测试目标路径。那里的路径正是您报告收到警告的路径;删除路径消除了它。
我就是这样解决这个问题的
进一步将我的 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'
实际上我在比较新项目和旧项目时发现了一些东西...
在旧项目中,警告仅由我项目的测试目标产生。在 'Search Paths' 下,我发现它包括 'Framework Search Paths':
下的两个项目$(SDKROOT)/Developer/Library/Frameworks
$(inherited)
新项目将 'Framework Search Paths' 保留为空。
删除我的旧项目中的那些条目然后删除警告。
备注:
我没有详尽地比较设置,因此可能存在其他差异。
此外,以防万一有一天您再次遇到以下两个警告消息之一,请记住您必须这样做:如果警告是针对选项 '-L/...'
即 Library Search Paths,删除那里的东西。但是,如果警告针对选项 '-F/...'
,即框架搜索路径,请删除那里的内容。
King-Wizard基本正确,再详细一点-
Xcode 7 正在不存在的路径中寻找您的测试框架 XCtest.framework
。 $(SDKROOT)/Developer/Library/Frameworks
在 'Search Paths -> Framework Search Paths' 下设置的路径正在寻找 /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
对于那些好奇的人。
希望对您有所帮助。
我在 Xcode 9.2 中遇到了同样的错误,这是我没有手动操作的解决方案:
- 在项目导航器中单击您的项目
- 转到目标并单击 MyProjectNameTest
- 单击构建设置并搜索“框架搜索路径”
- 在 Framework Search Paths 下,删除路径并保留“$(inherited)”。
对于那些有以下错误的人:
directory not found for option ‘-L/…
这意味着这是一个库错误,因此您可以尝试按照以下步骤操作:
- 点击您的项目(目标)
- 点击构建设置,搜索“库搜索路径”
- 在库搜索路径下,删除路径并保留“$(inherited)”