iphone - solucion - Problema extraño después de actualizar a iOS 4.1 SDK
ha ocurrido un problema al descargar el software para el iphone (3)
Este es un error conocido con el SDK de iOS 4.1 y la creación con LLVM para el simulador de iPhone. Puedes leer todo sobre esto en este hilo en los foros de desarrolladores de Apple.
La solución recomendada es agregar lo siguiente a Other C Flags
en la configuración de compilación de su proyecto: -D__IPHONE_OS_VERSION_MIN_REQUIRED=040100
donde reemplaza 040100 con su versión de destino de implementación (030000 para 3.0, por ejemplo).
He actualizado el SDK de iOS a la versión 4.1 recientemente lanzada y ahora tengo el siguiente error al crear mi aplicación:
/DeveloperBeta/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.1.sdk/System/Library/Frameworks/CoreGraphics.framework/Headers/CGPDFContext.h:60:23
/DeveloperBeta/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.1.sdk/System/Library/Frameworks/CoreGraphics.framework/Headers/CGPDFContext.h:60:23: error: expected function body after function declarator
Mirando esa línea en el archivo .h veo lo siguiente:
CG_EXTERN void CGPDFContextAddDocumentMetadata(CGContextRef context, CFDataRef metadata) CG_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_4_0);
Lo realmente interesante es la definición __MAC_10_7 que parece no estar definida en ninguna parte. Recibo este error al compilar previamente el archivo .pch de mi aplicación.
Lo curioso es que se compila una sencilla aplicación de hello world.
¿Alguna idea de qué puedo hacer?
¡Gracias por adelantado!
Stelian
Tal vez deberías estar construyendo con el último Xcode 4, ¿es esto un requisito? El MAC_10_7 se definiría en los encabezados del sistema enviados con el compilador que supongo podría estar en el SDK, pero creo que no. Supongo que esto es cuando construyes para el simulador.
Tengo este problema al usar el compilador LLVM. Intenta recompilar usando GCC y el problema (para mí) desaparece.
Seguiré investigando para determinar si se trata de un problema general de la cadena de herramientas o si es específico de mi configuración.
--actualizar:
Así que parece un problema con CLANG. LLVM GCC 4.2 funciona bien.
Todavía creo que es probable que sea un problema con mi configuración. Incluso un proyecto vacío no se compilará bajo LLVM CLANG 1.5 para mí.
- actualización 2:
Por lo tanto, parece que la configuración de la versión mínima requerida no se cumple en la configuración de información del proyecto. Lo he configurado manualmente a través de:
Otros indicadores C: -D__IPHONE_OS_VERSION_MIN_REQUIRED = 031300
(para un mínimo de iOS 3.1, obviamente, si necesita una versión posterior, puede usar 040100 para la versión 4.0)
Parece que solo es un problema de simulador con CLANG / LLVM. La compilación del dispositivo directamente parece funcionar bien.