ios - for - google places swift 4
Problema del enlazador de Xcode 7 con el SDK de Google Maps (4)
Acabo de descargar Xcode 7 beta 4 y estoy tratando de construir mi aplicación Swift 2.0, pero obtengo el siguiente error, que no puedo encontrar la solución para:
ld: warning: -weak_framework se trata como -framework cuando se usa con -bitcode_bundle (configuración de Xcode ENABLE_BITCODE = YES). La vinculación débil aún puede ocurrir en función del marcado de disponibilidad en los encabezados ld: ''path / Pods / GoogleMaps / Frameworks / GoogleMaps.framework / GoogleMaps (GMSBillingPointRecorder.o)'' no contiene códigos de bits. Debe reconstruirlo con el código de bits habilitado (configuración de Xcode ENABLE_BITCODE), obtener una biblioteca actualizada del proveedor o deshabilitar el código de bits para este objetivo. para arquitectura arm64 clang: error: el comando del enlazador falló con el código de salida 1 (use -v para ver la invocación)
¿Alguien sabe cómo arreglar este problema?
Cambié el marcador ENABLE_BITCODE a No y compilé correctamente gracias a @Visput por la respuesta
Establecer el indicador ENABLE_BITCODE en NO resuelve el problema.
Para aquellos que se preguntan si es seguro desactivarlo. Sí lo es.
Según Apple Doc
Bitcode (iOS, watchOS)
Bitcode es una representación intermedia de un programa compilado. Las aplicaciones que cargues en iTunes Connect que contengan código de bits se compilarán y vincularán en la App Store. Incluir bitcode permitirá a Apple volver a optimizar su aplicación binaria en el futuro sin la necesidad de enviar una nueva versión de la aplicación a la tienda.
Xcode oculta los símbolos generados durante el tiempo de compilación de forma predeterminada, por lo que Apple no los puede leer. Solo si elige incluir símbolos al cargar su aplicación a iTunes Connect, los símbolos se enviarán a Apple. Debes incluir símbolos para recibir informes de fallos de Apple.
Nota: Para las aplicaciones de iOS, el código de bits es el predeterminado, pero opcional. Si proporciona código de bits, todas las aplicaciones y marcos del paquete de aplicaciones deben incluir código de bits. Para aplicaciones de watchOS, se requiere bitcode.
Bitcode es parte del nuevo esfuerzo de Apple para la reducción de aplicaciones. En el momento de redactar este documento, es opcional, pero podría ser necesario más adelante. Creo que Apple le está dando tiempo a las comunidades de marcos / libs para adaptarse.
Edición: en Xcode 7, usted carga su aplicación a iTunes Connect en un estado intermedio llamado Bitcode . Cuando los usuarios descarguen su aplicación, App Store producirá automáticamente una versión optimizada de su aplicación (es decir, de 64 bits si es necesario) para que coincida con el dispositivo que está utilizando el usuario.
Por ahora, lo que podemos hacer es desactivar el código de bits y esperar la actualización del SDK de Google Maps.
ACTUALIZAR
SDK 1.11.0 - ahora es compatible con Bitcode
https://developers.google.com/maps/documentation/ios-sdk/releases?hl=en
Recursos:
Impacto de las opciones de compilación de Xcode "Habilitar código de bits" Sí / No
Google ha resuelto este problema en SDK versión 1.11.0 - diciembre de 2015. Consulte las notas de la versión :
Bitcode ahora se incluye en el binario SDK para todas las arquitecturas de dispositivos. ( code.google.com/p/gmaps-api-issues/issues/detail?id=8219 ).