2011-12-01 16 views
18

Hay tres diferentes rutas de búsqueda de configuración de generación XCode:iOS: Aclarar diferentes rutas de búsqueda

  • marco Ruta de búsqueda de
  • cabecera Ruta de búsqueda de
  • Biblioteca Ruta de búsqueda de

Podría alguien aclarar ¿Qué hacen esos caminos y para qué se utilizan?

Respuesta

20

Ruta de búsqueda de estructura: dónde buscar frameworks (.framework paquetes) además de rutas de marcos de sistemas. No se usa mucho en el desarrollo de iOS, oficialmente no hay frameworks de iOS para desarrolladores.

En el desarrollo de Mac, se configura automáticamente si arrastra un marco de terceros al proyecto. De lo contrario, simplemente configúrelo en el directorio del contenedor donde guardó el marco.

En xcconfig archivos que utiliza esta variable:

FRAMEWORK_SEARCH_PATHS = "/path/to/frameworks/container/directory" 

Cabecera ruta de búsqueda: dónde buscar archivos de cabecera (.h archivos), además de las rutas del sistema. Por lo general, lo necesitarás si estás utilizando una biblioteca de terceros. Establézcalo en el directorio donde tiene los archivos de encabezado. Si usa un directorio para incluir el encabezado (ejemplo: #import "mylibrary/component.h") configúrelo en el directorio principal.

En xcconfig archivos que utiliza esta variable:

HEADER_SEARCH_PATHS = "/path/to/headers/container/directory" 

Biblioteca ruta de búsqueda: dónde buscar los archivos de la biblioteca, además de las rutas del sistema. Xcode lo configurará automáticamente si arrastra una biblioteca (archivos .a) al proyecto. Para configurarlo manualmente, use el directorio donde se encuentra la biblioteca.

En xcconfig archivos que utiliza esta variable:

LIBRARY_SEARCH_PATHS = "/path/to/libraries/container/directory" 

Los tres pueden contener una lista de rutas, con citas, separados por el espacio.

0

Se utilizan para buscar marcos, archivos de encabezado o bibliotecas que no están en las rutas de búsqueda del sistema (como QTKit.Framework, archivos de encabezado C++ estándar, etc.).

Mi uso más común para esto es usar los archivos de la biblioteca de encabezado boost (* .hpp) en mi código. Agrego la ruta relativa "../lib/Boost/1.46.1" a la ruta de búsqueda de encabezado.

Me parece mejor agregar esto en el nivel de proyecto en lugar de en cada objetivo. De esta manera, los objetivos heredan esto y solo necesita cambiarse en un lugar si actualizo la versión de boost.

Cuestiones relacionadas