Pregunta

He añadido Marcos privado a mi proyecto. Cuando construyo en el dispositivo | LIBERAR todo funciona bien y soy capaz de ldid -S la aplicación y se pone en marcha con éxito en mi dispositivo.

Sin embargo, cuando se trata de construir y GO en simulador, me sale el error "No existe el fichero o directorio" como se indica a continuación: (. También me sale el error dos veces lo que es extraño también)

 Line Location HomeProfileViewController.h:10: error:  BluetoothManager/BluetoothManager.h:  No such file or directory

A continuación se presentan el proyecto y la configuración de creación que tengo actualmente, tal vez alguien puede encontrar un error y que me haga saber, que sería increíble!

configuración del proyecto:

PRIVATE_HEADERS_FOLDER_PATH = "/Developer/SDKs/iPhoneOS.sdk/Versions/iPhoneOS3.0.sdk/include"
PUBLIC_HEADERS_FOLDER_PATH = "/Developer/SDKs/iPhoneOS.sdk/Versions/iPhoneOS3.0.sdk/include"
USER_HEADER_SEARCH_PATHS = "/Developer/SDKs/iPhoneOS.sdk/Versions/iPhoneOS3.0.sdk/include"

OTHER_CFLAGS = "-I/Developer/SDKs/iPhoneOS.sdk/Versions/iPhoneOS3.0.sdk/include-I/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.0.sdk/usr/include-I/Developer/Platforms/iPhoneOS.platform/Developer/usr/lib/gcc/arm-apple-darwin9/4.0.1/include-F/System/Library/Frameworks-F/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.0.sdk/System/Library/Frameworks-F/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.0.sdk/System/Library/PrivateFrameworks-DMAC_OS_X_VERSION_MAX_ALLOWED=1050"

configuración de destino de construcción:

PRIVATE_HEADERS_FOLDER_PATH = "/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.0.sdk/System/Library/PrivateFrameworks"
FRAMEWORK_SEARCH_PATHS = "$(inherited) $(SDKROOT)$(SYSTEM_LIBRARY_DIR)/PrivateFrameworks"
USER_HEADER_SEARCH_PATHS = "/Developer/SDKs/iPhoneOS.sdk/Versions/iPhoneOS3.0.sdk/include/**"

OTHER_CFLAGS = "-I/Developer/SDKs/iPhoneOS.sdk/Versions/iPhoneOS3.0.sdk/include-I/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.0.sdk/usr/include-I/Developer/Platforms/iPhoneOS.platform/Developer/usr/lib/gcc/arm-apple-darwin9/4.0.1/include-F/System/Library/Frameworks-F/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.0.sdk/System/Library/Frameworks-F/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.0.sdk/System/Library/PrivateFrameworks-DMAC_OS_X_VERSION_MAX_ALLOWED=1050"

Nota:. Las comillas en los caminos no están realmente en mi proyecto, los pongo en lo que el sitio se les sintaxis mejor

Cydia

¿Fue útil?

Solución

En realidad, para SDK 3.0 o superior, asegúrese de que los binarios y cabeceras están en los PrivateFrameworks carpeta como el siguiente ejemplo: /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.0.sdk/System/Library/PrivateFrameworks/BluetoothManager.framework

Los binarios y archivos de cabecera debe estar bajo este directorio, encabezados deben ser menores / encabezados, por ejemplo: /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.0.sdk/System/Library/PrivateFrameworks/BluetoothManager.framework/Headers/BluetoothManager.h

a continuación, utilizar estas declaraciones en la que tendrá las cabeceras privadas:

#if TARGET_IPHONE_SIMULATOR
    //This is where you put code for simulator
#else
    //Private functions will go here!       
#endif

Ahora puede agregar el marco privado desde el primer directorio que aparece más arriba, y se puede construir e ir a por el simulador, y construir para el dispositivo! Usted no tendrá que añadir / eliminar los marcos cuando se cambia de dispositivo / simulador!

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top