2011-09-08 33 views
7

Recibí una advertencia de que mi proyecto debe incluir el binario de armv6 ... pero realmente no sé cómo hacerlo. ¿Ha estado buscando una respuesta en Google, pero ninguna de las sugerencias parece encajar? ¿Es necesario que Armv6 descargue algo para mi aplicación, o lo tiene Xcode, solo tengo que incluirlo en la configuración de mi proyecto? Además, mi aplicación debería ser compatible con OS hasta 3.1.¿Cómo agregar arquitectura armv6 al proyecto Xcode?

He añadido i386 detrás de armv6 y armv7 en la sección de depuración, pero no sé si eso soluciona el problema. ¿Esto les parece a ustedes personas con más experiencia?

Screenshot of Architecture settings:

+0

¿Utiliza una cierta versión beta no divulgada? No puedes. Estamos a punto de subir una aplicación y tenemos que usar la versión que no es beta. Dicho esto, logré deshacerme del "error de Armv6" simplemente añadiéndolo manualmente, pero aún así no pude cargarlo –

Respuesta

2

En Configuración del proyecto, seleccione "Estándar" para la arquitectura (no "optimizado"). Esto debería permitirle seleccionar "armv6" para la Arquitectura Activa. Esto significa que también debería funcionar en dispositivos más antiguos (salvo cualquier otra degradación) una vez que esté en la tienda de aplicaciones.

Cambie su SDK base al dispositivo iOS 4.xo inferior para que pueda ver su arquitectura armv6.

+0

Está establecido en "Estándar (armv7)" - y esa es la única opción que tengo tiene .. –

+0

Cambie su SDK base a ios 4.xo inferior. –

+0

muchas gracias praveen –

0

Eso es porque usa el nuevo iOS 5 SDK. Apple descarta la arquitectura armv6 de las arquitecturas estándar.

Puede tener más información sobre este thread que he comenzado anteriormente.

3

podía correr mi código en un iPhone primera generación vieja utilizando la cadena ARMv7 ARMv6 en lugar de $ (ARCHS_STANDARD_32_BIT) en las arquitecturas y el establecimiento de "Construir activo Arquitectura Sólo" a SÍ.

+0

Si obtiene un error como este " Error al ejecutar el programa remoto: no se pudo obtener la tarea para el proceso 1837 ", intente cambiar la distribución de la versión. –

1

Acabo de tener este mismo problema. Cargué un número de proyectos antiguos de XCode y compilarían y funcionarían bien con el simulador; sin embargo, tan pronto como intentaste ejecutar o depurar el dispositivo (que en mi caso en un iTouch v2) simplemente diría que se estaba ejecutando, luego diga que la aplicación salió. Sin errores, sin registros.

Gracias a alguien en los foros de desarrolladores de iOS por ponerme en el camino correcto. En algún momento durante los últimos dos lanzamientos de XCode (sin contar los lanzamientos de XCode para OSX Lion ya que tengo acceso solo a OSX Snow Leopard), Apple cambió la forma en que se configuraron los proyectos, incluso los más antiguos que se cargaron.

La arquitectura estándar utilizada para incluir tanto arm6 como arm7, sin embargo, y al menos con el estándar XCode 4.2, ahora solo incluye el brazo 7 $ (ARCHS_STANDARD_32_BIT) y aparentemente restablece la configuración de un proyecto anterior. Lo cual no se notó cuando usé el simulador.

He intentado cambiar la cadena de configuración a "arm6 arm7" y esto no funcionó. Sin embargo, el error que se devolvió contenía la solución (al menos para mí y esperamos que otros sigan teniendo este problema).

En XCode 4.2 si desea construir hardware antiguo como v1 y v2 simplemente cambie la configuración del proyecto. para Arquitecturas a $ (VALID_ARCHS), que por defecto es el estándar anterior de Arm6 y Arm7.

Como se mencionó anteriormente, se requiere configurar la arquitectura de creación activa solamente en "Sí" para la opción de depuración (esto, sin embargo, no es confirmado por mí para ser necesario).

Espero que esto ayude a cualquier otra persona que todavía tenga este problema y me disculpo por topar con este hilo.

7

Sigue mi paso

  1. En la imagen que elija cambio de nivel a "combinado"
  2. Haga clic en Standard (ARMv7) $ (ARCHS_STANDARD_32_BIT)
  3. elegir la opción "Otros"
  4. selección situados en "$ (ARCHS_STANDARD_32_BIT)" y el clic "-" para eliminarlo
  5. Haga clic en "+" para añadir nuevo elemento
  6. Tipo "ARMv6"
  7. Haga clic en "+" de nuevo
  8. Tipo "ARMv7"
  9. Haga clic en cualquier lugar para terminar

espero que esto ayuda

acabo tienen el mismo problema y trato de hacer esto y que funcione para mí

+0

¡Finalmente, la solución! – wouterds

Cuestiones relacionadas