Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Linker errors when trying to install new Google Analytics 3.0 Beta

I believe just today Google released a new update to their iOS Analytics frame work (version 3.0). When I follow the instructions and try to run the code, I get:

Undefined symbols for architecture armv7: "_inflate", referenced from: l002 in libGoogleAnalyticsServices.a(NSData+zlib.o) "_deflate", referenced from: l001 in libGoogleAnalyticsServices.a(NSData+zlib.o) "inflateInit2", referenced from: l002 in libGoogleAnalyticsServices.a(NSData+zlib.o) "_deflateEnd", referenced from: l001 in libGoogleAnalyticsServices.a(NSData+zlib.o) "_OBJC_CLASS_$_ASIdentifierManager", referenced from: objc-class-ref in libGoogleAnalyticsServices.a(TAGAdvertiserId.o) objc-class-ref in libGoogleAnalyticsServices.a(TAGAdvertisingTrackingEnabledMacro.o) objc-class-ref in libGoogleAnalyticsServices.a(TAGMobileAdwordsUniqueIdMacro.o)
"_inflateEnd", referenced from: l002 in libGoogleAnalyticsServices.a(NSData+zlib.o) "_SCNetworkReachabilityCreateWithName", referenced from: l027 in libGoogleAnalyticsServices.a(GAIReachabilityChecker.o) l002 in libGoogleAnalyticsServices.a(TAGNetReachability.o) "_SCNetworkReachabilitySetCallback", referenced from: l027 in libGoogleAnalyticsServices.a(GAIReachabilityChecker.o) l002 in libGoogleAnalyticsServices.a(TAGNetReachability.o) l003 in libGoogleAnalyticsServices.a(TAGNetReachability.o) "deflateInit2", referenced from: l001 in libGoogleAnalyticsServices.a(NSData+zlib.o) "_SCNetworkReachabilityScheduleWithRunLoop", referenced from: l027 in libGoogleAnalyticsServices.a(GAIReachabilityChecker.o) l002 in libGoogleAnalyticsServices.a(TAGNetReachability.o) "_SCNetworkReachabilityUnscheduleFromRunLoop", referenced from: l027 in libGoogleAnalyticsServices.a(GAIReachabilityChecker.o) l003 in libGoogleAnalyticsServices.a(TAGNetReachability.o) ld: symbol(s) not found for architecture armv7 clang: error: linker command failed with exit code 1 (use -v to see invocation)

Possible they forgot to include a lib I need to add? (some other aspects of the instructions they forgot to change as well). Otherwise have followed their instructions to a tee and still not getting the needed results.

like image 398
Ser Pounce Avatar asked Aug 17 '13 07:08

Ser Pounce


2 Answers

I had to add both libz.dylib and AdSupport.framework to the build phases to make this go away. Google doesn't include these in their instructions so going to check with them to make sure this is OK then will update this post.

UPDATE: Now you also need to add libsqlite3.0.dylib to get it to work.

like image 176
Ser Pounce Avatar answered Nov 14 '22 16:11

Ser Pounce


I downloaded version 3.06 of the Google Analytics Services for iOS in early April 2014, and STILL ran into the problems referenced above. Google has updated their docs to mention the need to link the libz.dylib and the AdSupport.framework.

SOLUTION: I found through trial and error, I also needed to link the libsqlite3.dylib in order to build on the simulator or to a device.

like image 24
Darren Avatar answered Nov 14 '22 16:11

Darren