Mach-O error on Flurry integration Xcode

James picture James · Sep 22, 2012 · Viewed 7k times · Source

I'm attempting to integrate the Flurry SDK into my iOS app for the first time. I added the libraries and code to AppDelegate.m as explained in their instructions. When I compile I get the following errors:

 Undefined symbols for architecture armv7:
  "_SCNetworkReachabilityCreateWithAddress", referenced from:
      +[FlurryReachability flurryReachabilityWithAddress:] in libFlurry.a(libFlurry.a-armv7-master.o)
  "_SCNetworkReachabilityCreateWithName", referenced from:
      +[FlurryReachability flurryReachabilityWithHostName:] in libFlurry.a(libFlurry.a-armv7-master.o)
  "_SCNetworkReachabilityUnscheduleFromRunLoop", referenced from:
      -[FlurryReachability flurryStopNotifier] in libFlurry.a(libFlurry.a-armv7-master.o)
  "_SCNetworkReachabilityScheduleWithRunLoop", referenced from:
      -[FlurryReachability flurryStartNotifier] in libFlurry.a(libFlurry.a-armv7-master.o)
  "_SCNetworkReachabilitySetCallback", referenced from:
      -[FlurryReachability flurryStartNotifier] in libFlurry.a(libFlurry.a-armv7-master.o)
  "_SCNetworkReachabilityGetFlags", referenced from:
      -[FlurryReachability flurryCurrentReachabilityStatus] in libFlurry.a(libFlurry.a-armv7-master.o)
      -[FlurryReachability isFlurryReachable] in libFlurry.a(libFlurry.a-armv7-master.o)
      -[FlurryReachability isFlurryConnectionRequired] in libFlurry.a(libFlurry.a-armv7-master.o)
      -[FlurryReachability isFlurryConnectionOnDemand] in libFlurry.a(libFlurry.a-armv7-master.o)
      -[FlurryReachability isFlurryUserInterventionRequired] in libFlurry.a(libFlurry.a-armv7-master.o)
      -[FlurryReachability isFlurryReachableViaWWAN] in libFlurry.a(libFlurry.a-armv7-master.o)
      -[FlurryReachability isFlurryReachableViaWiFi] in libFlurry.a(libFlurry.a-armv7-master.o)
      ...
ld: symbol(s) not found for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)

I've updated to the latest version of XCode and am using the latest Flurry SDK.

Anyone else encountering this and have a fix? Their support forums mentioned a similar issue several days ago but the users claimed it was fixed, and I can't find any suggestions on their site of what to do about it.

Answer

BigSauce picture BigSauce · Oct 18, 2012

In short, you need to link against the SystemConfiguration framework. The answer to this thread explains this. Fixed it for me when I upgraded to Flurry SDK 4.0.6.

I wish Flurry explained this, but I did not see any documentation on Flurry's site explaining this necessary Flurry SDK 4.0.6 integration step.

Link Against SystemConfiguration.framework