iOS:澄清不同的搜索路径

csc*_*uff 21 xcode build-settings ios ios-frameworks

XCode构建设置中有三种不同的搜索路径:

  • 框架搜索路径
  • 标题搜索路径
  • 图书馆搜索路径

任何人都可以澄清这些路径做什么以及它们用于什么?

djr*_*ero 25

框架搜索路径:除了系统框架路径之外,还在哪里搜索框架(.frameworkbundle).在iOS开发中使用不多,官方没有开发人员iOS框架.

在Mac开发中,如果将第三方框架拖到项目中,它会自动设置.否则,只需将其设置为保存框架的容器目录.

xcconfig文件中,您使用此变量:

FRAMEWORK_SEARCH_PATHS = "/path/to/frameworks/container/directory"
Run Code Online (Sandbox Code Playgroud)

标题搜索路径:.h除系统路径外还搜索标题文件(文件)的位置.通常,如果您使用第三方库,则需要它.将其设置为您具有头文件的目录.如果使用目录来包含标头(例如:),#import "mylibrary/component.h"则将其设置为父目录.

xcconfig文件中,您使用此变量:

HEADER_SEARCH_PATHS = "/path/to/headers/container/directory"
Run Code Online (Sandbox Code Playgroud)

库搜索路径:除系统路径外还搜索库文件的位置.如果将库(.a文件)拖动到项目中,Xcode将自动设置它.要手动设置,请使用库所在的目录.

xcconfig文件中,您使用此变量:

LIBRARY_SEARCH_PATHS = "/path/to/libraries/container/directory" 
Run Code Online (Sandbox Code Playgroud)

这三个都可以包含一个带有引号的路径列表,用空格分隔.