2011-08-06 10 views
7

Tengo un problema al intentar migrar mi aplicación de iPhone a la nueva tecnología ARC. Cuando intento convertir el código, aparece el siguiente error 29 veces:Objective-C ARC Error: -fobjc-arc no es compatible con frágil abi

Apple LLVM compiler 3.0 Error 
-fobjc-arc is not supported with fragile abi 

¿Qué significa esto? Y más importante aún, ¿cómo puedo solucionarlo? ¡Gracias de antemano!

+0

Podría publicar algunos ejemplos de código para algunos de estos errores? –

+0

Los errores no están relacionados con una parte específica del código. Cuando hago clic sobre ellos, no pasa nada. –

+0

acabo descubrí lo que es un abi frágil. Es un modo de compilación específico. Pero ¿cómo puedo cambiar de compilación abi frágil? –

Respuesta

5

De Apple's developer forums

This is an unfortunate bug in Seed 3, where the migrator and simulator aren't working well together. To address this, just switch to a device target, then do migration.

+0

¡Muchas gracias! Funciona: D –

+2

¿Qué hago si obtengo este error en la versión de 32 bits? de una aplicación Mac OS X, pero no la versión de 64 bits? ¿Es correcto que ARC no sea compatible con las aplicaciones Mac de 32 bits en Lion? La guía de transición parece indicar esto (busque "64"): http://developer.apple.com/library/ios/#releasenotes/ObjectiveC/RN-TransitioningToARC/_index.html – LearnCocos2D

+6

Respuesta: 32-Bit + ARC es un no-go, al menos bajo Lion. Lo probé creando una nueva Mac ap p y cambie la arquitectura permitida para incluir 32 bits. – LearnCocos2D

2

cambio compilador.

Establezca el compilador del proyecto en "LLVM GCC 4.2", en lugar de "Apple LLVM 3.0"; ARC solo se admite cuando utiliza Apple LLVM. Para configurar el compilador del proyecto, en su proyecto, en "Configuración de compilación", y luego en "Opciones de compilación", hay una configuración para "Compilador para Objective-C". Cambiar el valor a "LLVM GCC 4.2

Cuestiones relacionadas