una que pro libreria estatica dinamica crear como actualizar ios objective-c xcode ios6 static-libraries

ios - que - final cut pro



El archivo es universal(tres porciones), pero no contiene un(n) error de división ARMv7-s para las bibliotecas estáticas en iOS, ¿de todos modos se puede omitir? (8)

Xcode versión de Xcode y cuando uso bibliotecas estáticas externas, recibo este mensaje:

ld: el archivo es universal (3 segmentos) pero no contiene un (n) segmento de armv7s: / file / location para la arquitectura armv7s clang: error: el comando del enlazador falló con el código de salida 1 (use -v para ver la invocación)

¿Hay alguna forma de evitar esto y agregar soporte a la biblioteca si el desarrollador de la biblioteca no ha actualizado su biblioteca todavía?


Acabo de publicar una solución here que también se aplicaría en este caso; básicamente, haces un hexadecimal de búsqueda y reemplazo en tu biblioteca externa para que piense que es el código ARMv7s. Debería poder usar lipo para lipo en 3 bibliotecas estáticas, duplicar / modificar el ARMv7 y luego usar lipo nuevamente para ensamblar una nueva biblioteca para las 4 arquitecturas.


En caso de que esto le pase a alguien. Construí mi propia biblioteca para usar con un código de terceros. Mientras lo estaba construyendo para entregarlo, accidentalmente dejé mi iPhone 4S enchufado, por lo que Xcode construyó mi biblioteca solo para la arquitectura enchufada en lugar de seguir la configuración del proyecto. Quite todos los dispositivos conectados y reconstruya la biblioteca, vincúlela y debería estar bien.

Espero eso ayude.


En mi caso, estaba enlazando a una biblioteca de terceros que era un poco antigua (desarrollada para iOS 6, en XCode 5 / iOS 7). Por lo tanto, tuve que actualizar la biblioteca de terceros, hacer una limpieza y compilación, y ahora se construye con éxito.


Intente eliminar armv7s de la "arquitectura válida" del proyecto para liberarlo de este problema para el teléfono iOS 5.1


Si desea eliminar el soporte para cualquier arquitectura, por ejemplo, ARMv7-s en su caso, use el menú Proyecto -> Crear configuración -> eliminar la arquitectura de "arquitecturas válidas".

Puede usar esto como una solución temporal hasta que la biblioteca haya sido actualizada. Debe eliminar la arquitectura de su proyecto principal, no de la biblioteca.

De forma alternativa, puede establecer el indicador para la configuración de depuración "Construir solo arquitectura activa" en Sí. Deje la configuración de la versión "Build Active Architecture Only" en No, solo para que reciba un recordatorio antes de lanzar que debe actualizar las bibliotecas de terceros que esté usando.


Simplemente he cambiado "Construir solo arquitectura activa" a "Sí" en la configuración de compilación del objetivo, ¡y ahora está bien!


Soporte de Flurry para iPhone 5 (ARMv7s) Como mencioné en la publicación de ayer, Flurry comenzó a trabajar en una versión del SDK de iOS para admitir el procesador ARMv7s en el nuevo iPhone 5 inmediatamente después del anuncio del miércoles.

Me complace decirle que el trabajo está hecho y que el SDK ahora está disponible en el sitio.


usar el menú Proyecto -> Crear configuración ->

luego retire armv7s de las "arquitecturas válidas". Si se ha elegido el estándar, elimínelo y luego agregue armv7.