Pregunta

Ya he pasado incontables horas dándole vueltas a esto, la utilización de las búsquedas de Google y otras preguntas desbordamiento de pila en vano.

Tengo una aplicación universal para iPhone / iPad, que parece compilarse bien cuando el objetivo es ARMv6. Sin embargo, cuando el dispositivo está IPAD, consigo esta advertencia:

warning: building for SDK 'Device - iPhone OS 3.2' requires an armv7 architecture.

Por extraño que parezca, la aplicación todavía funciona muy bien en el iPad, a pesar de esta advertencia. Sin embargo, yo quiero hacer las cosas de la manera "correcta" lo que cada vez que eso significa en este caso. Cuando cambio la arquitectura destino a ARMv7, consigo que une errores:

  "___restore_vfp_d8_d15_regs", referenced from:
     *redacted*

  "___save_vfp_d8_d15_regs", referenced from: 
     *redacted*

ld: symbol(s) not found

collect2: ld returned 1 exit status

Las porciones "redactados" de los errores son referencias a la biblioteca estática a la que estoy tratando de enlace.

Esto es lo que he tratado de las muchas sugerencias en línea. Cada uno de éstos se propusieron más de una vez sin ninguna explicación, lo que me lleva a creer que nadie entiende bastante este problema:

  

"Nunca utilice el menú desplegable en la parte superior izquierda de la ventana de XCode para elegir el objetivo. En lugar de ello, active esta Base SDK y el SDK Base para iPhone OS 3.0 en la configuración de destino. Configurar el dispositivo de destino a su blanco preferido (iPad, iPhone OS 3.2 en mi situación.) "

Esto produce el error "Biblioteca no encontrado para -lcrt1.3.1.o"

  

"Asegúrese de que GCC no está ligado con la versión incorrecta de la biblioteca estándar. (Usted tendrá que asegurarse de que el LIBRARY_SEARCH_PATH no tiene el camino equivocado en ella.)"

Mi LIBRARY_SEARCH_PATH ya está vacía, así que esto no parece relevante.

  

"tratar de compilar con GCC 4.0 en lugar de 4.2 GCC."

me sale un error de sintaxis en un archivo de cabecera UIKit. El error es "Error de sintaxis antes 'AT_NAME' token." La línea es "UIKIT_EXTERN @interface UILocalizedIndexedCollation:. NSObject"

Otro proyecto compila bien con los Configuración mismo objetivo, que está realmente me hace cuestionar mi cordura. Podría estar tratando con un proyecto XCode corrupto?

Si alguien sabe lo que está sucediendo realmente y tiene una referencia o no le importa explicarlo, yo estaría muy agradecido.

Saludos!

¿Fue útil?

Solución

VFP entre ARMv7 y ARMv6 difiere de varias maneras. En su ARMv7 generalmente preferible utilizar neón. El problema es su biblioteca estática depende de VFP en ARMv6 -. Que sea necesario compilar la biblioteca de ARMv7 o mantener toda la aplicación en ARMv6

Volviendo de nuevo a GCC 4.0 es tonta -. ARMv7 apoyo era básicamente inexistente volver entonces a menos que Apple se portado

Otros consejos

Yo tenía los mismos errores, excepto que era para ARMv6. Les fijo desmarcando "Compilar para el pulgar" en la configuración del proyecto para la biblioteca estática y el proyecto principal.

En lo que se refiere a error AT_NAME uno de la posibilidad es Comprobar si se le pasa la @end en una clase.

Para saber más sobre la visita de error AT_NAME el siguiente enlace

http://iosdevelopertips.com/xcode/error- sintaxis-error-antes-AT_NAME-token.html

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