Ya he pasado incontables horas desconcertante a través de este, la utilización de las búsquedas de Google y otros Desbordamiento de la Pila de preguntas fue en vano.

Tengo un iPhone/iPad aplicación universal, que parece compilar bien cuando el objetivo es binarios armv6. Sin embargo, cuando el dispositivo es el iPad, me sale este aviso:

advertencia: la construcción de SDK "Dispositivo iPhone OS 3.2' requiere una arquitectura armv7. 

Por extraño que parezca, la aplicación todavía funciona en el iPad, a pesar de esta advertencia. Sin embargo, yo quiero hacer las cosas de la manera «correcta» de lo que significa en este caso. Cuando me cambie el destino de la arquitectura armv7, me da errores de vinculación:

 "___restore_vfp_d8_d15_regs", hace referencia a partir de: 
*editado* 

"___guarde_vfp_d8_d15_regs", hace referencia a partir de: 
*editado* 

ld: símbolo(s) no se ha encontrado 

collect2: ld devuelto 1 estado de salida 

La «redacted» porciones de los errores son referencias a la biblioteca estática a la que estoy tratando de enlace.

Aquí es lo que he tratado de muchas sugerencias en línea. Cada uno de estos fueron sugerido más de una vez, sin ninguna explicación, lo que me lleva a creer que nadie entiende este problema:

«Nunca utilice el menú desplegable en la parte superior izquierda de la XCode ventana para elegir el destino. En su lugar, establecer SDK Base y, a continuación, la Base del SDK para el iPhone OS 3.0 en la configuración de destino. Configurar el dispositivo de destino a tu destino preferido (iPad, iPhone OS 3.2 en mi situación).»

Esto produce el error «de la Biblioteca no se encuentra por lcrt1.3.1.o»

«Asegúrese de que GCC no es la vinculación 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).»

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

«Intentar compilar con GCC 4.0 en lugar de GCC 4.2.»

Obtengo un error de sintaxis en el interior de un UIKit archivo de encabezado. El error «error de Sintaxis antes de ‘AT_NAME’ token.» La línea es «UIKIT_EXTERN @interfaz UILocalizedIndexedCollation : NSObject.»

Otro proyecto se compila correctamente, con el misma configuración del destino, que realmente me hace dudar de mi cordura. Podría estar tratando con un corrupto proyecto de XCode?

Si alguien sabe lo que realmente está pasando y tiene una referencia o no importaría explicar, yo estaría muy agradecido.

Saludos!

Lo arquitecturas se combinan en la biblioteca? Usted puede encontrar esto con el archivo de comandos, por ejemplo, «archivo libfoo.una».

OriginalEl autor Tom | 2010-05-10

4 Comentarios

  1. 4

    VFP entre ARMv7 y binarios armv6 difiere en varios puntos. En ARMv7 su preferible el uso de NEÓN. El problema está en la biblioteca estática depende de VFP en binarios armv6 – usted necesita para compilar la biblioteca en ARMv7 o mantener toda la aplicación en binarios armv6.

    Volver de nuevo a GCC 4.0 es tonto – ARMv7 apoyo fue básicamente inexistente, de nuevo, a continuación, a menos que Apple backport.

    Gracias por la info, y estoy de acuerdo con el GCC 4.0 cosa. La VFP diferencias iba a explicar lo que está sucediendo. Lo extraño es, las aplicaciones de ejemplo que vienen con la biblioteca de la compilación de bien (y aún tienen la misma configuración.) Puede ser algún tipo de dependencia snafu en el proyecto de xcode que se produce la vinculación de los errores.
    Wow muchas gracias. He perdido horas en esto y usted me salvó de horas más.

    OriginalEl autor Yann Ramin

  2. 1

    Yo tenía los mismos errores, excepto que era para binarios armv6. He arreglado quitando «Compilar para el Pulgar» en la configuración del proyecto para la biblioteca estática y el proyecto principal.

    OriginalEl autor reutiman

Dejar respuesta

Please enter your comment!
Please enter your name here