XCode构建设置中有三种不同的搜索路径:
任何人都可以澄清这些路径的作用以及它们的用途吗?
答案 0 :(得分:25)
框架搜索路径:除系统框架路径外,还要搜索frameworks(.framework
个捆绑包)的位置。在iOS开发中使用不多,官方没有开发人员iOS框架。
在Mac开发中,如果将第三方框架拖到项目中,它会自动设置。否则,只需将其设置为保存框架的容器目录。
在xcconfig
个文件中,您使用此变量:
FRAMEWORK_SEARCH_PATHS = "/path/to/frameworks/container/directory"
标题搜索路径:除系统路径外,还搜索头文件(.h
文件)的位置。通常,如果您使用第三方库,则需要它。将其设置为您具有头文件的目录。如果使用目录来包含标头(例如:#import "mylibrary/component.h"
),请将其设置为父目录。
在xcconfig
个文件中,您使用此变量:
HEADER_SEARCH_PATHS = "/path/to/headers/container/directory"
库搜索路径:除系统路径外还搜索库文件的位置。如果将库(.a
文件)拖入项目,Xcode将自动设置它。要手动设置,请使用库所在的目录。
在xcconfig
个文件中,您使用此变量:
LIBRARY_SEARCH_PATHS = "/path/to/libraries/container/directory"
所有这三个都可以包含一个带引号的路径列表,用空格分隔。
答案 1 :(得分:0)
这些用于搜索不在系统搜索路径中的Frameworks,Header文件或库(如QTKit.Framework,标准C ++头文件等)。
我最常见的用法是在我的代码中使用boost头库(* .hpp)文件我将相对路径“../lib/Boost/1.46.1”添加到页眉搜索路径。
我发现在项目级别而不是在每个目标中添加它更好。这样,目标继承了这个,如果我更新boost版本,它只需要在一个地方更改。