Errores del enlazador al intentar instalar una nueva versión Beta de Google Analytics 3.0


Creo que justo hoy Google lanzó una nueva actualización de su marco de trabajo de análisis de iOS (versión 3.0). Cuando sigo las instrucciones e intento ejecutar el código, obtengo:

Símbolos indefinidos para arquitectura armv7: "_inflate", referenciado de: l002 en libGoogleAnalyticsServices.a (NSData + zlib.o) "_deflate", referenciado desde: l001 en libGoogleAnalyticsServices.a (NSData + zlib.o)" inflateInit2", referenciado desde: l002 en libGoogleAnalyticsServices.a (NSData + zlib.o) "_deflateEnd", referenciado desde: l001 en libGoogleAnalyticsServices.a (NSData + zlib.o) "_OBJC_CLASS_ _ _ASIdentifierManager", referenciado desde: objc-class-ref en libGoogleAnalyticsServices.a (TAGAdvertiserId.o) objc-class-ref en libGoogleAnalyticsServices.a (TAGAdvertisingTrackingEnabledMacro.o) objc-class-ref en libGoogleAnalyticsServices.a (TAGMobileAdwordsUniqueIdMacro.o)
"_inflateEnd", referenciado desde: l002 en libGoogleAnalyticsServices.a (NSData + zlib.o) "_SCNetworkReachabilityCreateWithName", referenciado desde: l027 en libGoogleAnalyticsServices.a (GAIReachabilityChecker.o) l002 en libGoogleAnalyticsServices.a (TAGNetReachability.o) "_SCNetworkReachabilitySetCallback", referenciado desde: l027 en libGoogleAnalyticsServices.a (GAIReachabilityChecker.o) l002 en libGoogleAnalyticsServices.a (TAGNetReachability.o) l003 en libGoogleAnalyticsServices.a (TAGNetReachability.o) " deflateInit2 ", referenciado desde: l001 en libGoogleAnalyticsServices.a (NSData + zlib.o) "_SCNetworkReachabilityScheduleWithRunLoop", referenciado desde: l027 en libGoogleAnalyticsServices.a (GAIReachabilityChecker.o) l002 en libGoogleAnalyticsServices.a (TAGNetReachability.o) "_SCNetworkReachabilityUnscheduleFromRunLoop", referenciado desde: l027 en libGoogleAnalyticsServices.a (GAIReachabilityChecker.o) l003 en libGoogleAnalyticsServices.a (TAGNetReachability.o) ld: símbolo(s) no encontrado (s) para arquitectura armv7 clang: error: enlazador el comando falló con el código de salida 1 (use-v para ver la invocación)

¿Es posible que hayan olvidado incluir una lib que tengo que añadir? (algunos otros aspectos de las instrucciones que se olvidaron de cambiar también). De lo contrario han seguido sus instrucciones a un tee y todavía no conseguir los resultados necesarios.

Author: Ser Pounce, 2013-08-17

6 answers

Tuve que agregar libz.dylib y AdSupport.framework a las fases de construcción para hacer que esto desapareciera. Google no incluye estos en sus instrucciones por lo que va a comprobar con ellos para asegurarse de que esto está bien a continuación, actualizará este post.

ACTUALIZACIÓN: Ahora también necesita agregar libsqlite3.0.dylib para que funcione.

 146
Author: Ser Pounce,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-03-22 10:19:17

Descargué la versión 3.06 de los Servicios de Google Analytics para iOS a principios de abril de 2014, y TODAVÍA me encontré con los problemas mencionados anteriormente. Google ha actualizado sus documentos para mencionar la necesidad de vincular el libz.dylib y el AdSupport.marco.

SOLUCIÓN: Encontré a través de ensayo y error, también necesitaba vincular el libsqlite3.dylib para construir en el simulador o en un dispositivo.

 24
Author: Darren,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-04-13 02:59:45

Añadir

libz.dylib

AdSupport.framework

libsqlite3.0.dylib

Google no actualizó su guía a partir del 8 de octubre de 2013.

La guía de Google Analytics está aquí

 22
Author: Nitya,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-06-24 10:02:14

Ninguna de las soluciones anteriores funcionó para mí. Lo que funcionó para mí, sin embargo, fue agregar estos:

libz.dylib

libsqlite3.0.dylib

libGoogleAnalyticsServices.a

Los servicios libGoogleAnalyticsServices.a es un archivo que se puede encontrar en la descarga de Google Analytics para aplicaciones móviles iOS SDK v3.

Espero que esto ayude!

 10
Author: Joseph Gill,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-10-28 23:49:01

Tenía libz.dylib y AdSupport.framework según las instrucciones de Google, funcionó bien.

Luego tuve que agregar -all_load en otras banderas del enlazador para alguna otra dependencia de la biblioteca, luego Google Analytics comenzó a fallar en la compilación con el error del enlazador.

Tuve que agregar libsqlite3.0.dylib framework para que funcionara.

Así que hay algo que ver con -all_load linker flag

 1
Author: krisrak,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-11-06 16:02:05

Hasta que los desarrolladores de terceros no habiliten BITCODE para sus bibliotecas antiguas, puede deshabilitar el código de bits en su propio proyecto si no va a tener una extensión de Apple Watch para su aplicación.

introduzca la descripción de la imagen aquí

 1
Author: Sauvik Dolui,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-09-28 12:46:15