2011-08-24 7 views
5

Cuando uso $(BUILT_PRODUCTS_DIR) en User Header Search Path (como se recomienda en this tutorial sobre bibliotecas estáticas) XCode 4 resuelve así:

enter image description here

Este es un problema mientras Trabajo con el simulador, porque los archivos de compilación se almacenan en Debug-iphonesimulator en lugar de Debug-iphoneos, y XCode no puede encontrar los encabezados.

Mi solución actual es construir primero para el dispositivo iOS iOS, y luego trabajar con el simulador. Esto es un poco tedioso y propenso a errores. ¿Qué estoy haciendo mal?

Respuesta

6

El directorio de productos de compilación se debe usar para la salida de Xcode, y es perfectamente razonable que estos directorios no existan en el momento en que comiences a compilar. No es aconsejable tener dependencias como encabezados de usuario en estos directorios.

Mi recomendación sería mover los encabezados dependientes fuera del directorio que está hablando.

+0

Entonces, ¿cómo se recomienda trabajar con archivos de cabecera de biblioteca estática de proyectos en el mismo espacio de trabajo? – hpique

+0

¿No es esto correcto siempre que agregue el objetivo del otro proyecto como una dependencia directa? –

+0

Para _headers_ Los dejaría como están en su proyecto y los haré referencia directamente desde allí; esto eliminará el requisito de que construya una biblioteca dependiente antes de que pueda compilar cualquier cosa en la aplicación cliente que pueda usarla. Si quisiera, podría dividir los encabezados que son "públicos" v. Los que son "privados" en sus propios directorios, y su aplicación solo buscaría encabezados en la carpeta pública. – fbrereto

1

Tuve el mismo problema. Lo arreglé haciendo lo siguiente. En lugar de establecer las Rutas de búsqueda de encabezado de usuario en $(BUILT_PRODUCTS_DIR)recursivo, lo configuré explícitamente en $(BUILT_PRODUCTS_DIR)/usr/local/includeno recursivo.

+0

¿Qué hace exactamente esto? Cuando lo uso, no encontrará ninguna de las otras cosas de la biblioteca. Pero si uso el '$ {BUILT_PRODUCTS_DIR}' entonces me encuentro con problemas al usar un archivo interna y externamente. –

Cuestiones relacionadas