iOS Undefined symbols for architecture x86_64 Xcode - ios

I have installed some third party frameworks in my app. Every thing was working fine and suddenly one day i started to get the following errors. Please note that these linker errors appear only when i try to run my app on iOS Simulator.
Undefined symbols for architecture x86_64:
"_AFNetworkingOperationFailingURLResponseDataErrorKey", referenced from:
___61-[DataManager signupWithEmail:password:name:success:failure:]_block_invoke.127 in DataManager.o
___46-[DataManager favoriteLesson:success:failure:]_block_invoke.311 in DataManager.o
___48-[DataManager unfavoriteLesson:success:failure:]_block_invoke.345 in DataManager.o
"_AFStringFromNetworkReachabilityStatus", referenced from:
___41-[DataManager startObservingReachability]_block_invoke in DataManager.o
"_OBJC_CLASS_$_ADJConfig", referenced from:
objc-class-ref in AppDelegate.o
"_OBJC_CLASS_$_ADJEvent", referenced from:
objc-class-ref in TrackingHelper.o
"_OBJC_CLASS_$_AFCompoundResponseSerializer", referenced from:
objc-class-ref in DataManager.o
"_OBJC_CLASS_$_AFHTTPRequestSerializer", referenced from:
objc-class-ref in DataManager.o
"_OBJC_CLASS_$_AFHTTPResponseSerializer", referenced from:
objc-class-ref in DataManager.o
"_OBJC_CLASS_$_AFHTTPSessionManager", referenced from:
objc-class-ref in DataManager.o
"_OBJC_CLASS_$_AFJSONRequestSerializer", referenced from:
objc-class-ref in DataManager.o
"_OBJC_CLASS_$_AFJSONResponseSerializer", referenced from:
objc-class-ref in DataManager.o
"_OBJC_CLASS_$_AFNetworkReachabilityManager", referenced from:
objc-class-ref in DataManager.o
"_OBJC_CLASS_$_AFURLSessionManager", referenced from:
objc-class-ref in DataManager.o
"_OBJC_CLASS_$_AMTagView", referenced from:
objc-class-ref in CategorySelectionViewController.o
"_OBJC_CLASS_$_Adjust", referenced from:
objc-class-ref in AppDelegate.o
objc-class-ref in TrackingHelper.o
"_OBJC_CLASS_$_CarbonTabSwipeNavigation", referenced from:
objc-class-ref in MyProfileViewController.o
objc-class-ref in SearchResultsContainerViewController.o
"_OBJC_CLASS_$_FBSDKAccessToken", referenced from:
objc-class-ref in SignUpViewController.o
objc-class-ref in MyProfileViewController.o
"_OBJC_CLASS_$_FBSDKAppEvents", referenced from:
objc-class-ref in AppDelegate.o
"_OBJC_CLASS_$_FBSDKApplicationDelegate", referenced from:
objc-class-ref in AppDelegate.o
"_OBJC_CLASS_$_FBSDKLoginManager", referenced from:
objc-class-ref in SignUpViewController.o
objc-class-ref in DataManager.o
objc-class-ref in LoginViewController.o
"_OBJC_CLASS_$_MGSwipeButton", referenced from:
objc-class-ref in LessonsViewController.o
"_OBJC_CLASS_$_MGSwipeTableCell", referenced from:
_OBJC_CLASS_$_LessonTableViewCell in LessonTableViewCell.o
"_OBJC_CLASS_$_Mixpanel", referenced from:
objc-class-ref in AppDelegate.o
objc-class-ref in InitialViewController.o
objc-class-ref in DataManager.o
"_OBJC_CLASS_$_WYPopoverController", referenced from:
objc-class-ref in GuideViewController.o
"_OBJC_METACLASS_$_MGSwipeTableCell", referenced from:
_OBJC_METACLASS_$_LessonTableViewCell in LessonTableViewCell.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Any help will be highly appreciated. I can debug, build and archive my project, if i do it on actual device but not on simulator. I have added all these frameworks via cocapods and i am using Xcode 7.3.

I had faced the same error. Like below
Undefined symbols for architecture x86_64:
"_OBJC_CLASS_$_AFJSONRequestSerializer", referenced from:
objc-class-ref in CuebiqSDK(BADispatcherHelper.o)
"_OBJC_CLASS_$_AFURLSessionManager", referenced from:
objc-class-ref in CuebiqSDK(BADispatcherHelper.o)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
I haven't added the AFURLSessionManager related classes in my project as mentioned in error. So, I added all the AFNetworking classes solved the problem. Make sure they are added to project target and shown under Build phases->Compile Sources

Related

ld: symbol(s) not found for architecture x86_64 in my pod classes

I updated my pods. After the update I am not able to launch my app due to following errors:
Undefined symbols for architecture x86_64:
"_OBJC_CLASS_$_DownPicker", referenced from:
objc-class-ref in ChooseBookViewController.o
"_OBJC_CLASS_$_FBSDKAppEvents", referenced from:
objc-class-ref in AnalyticsProvider.o
"_OBJC_CLASS_$_FBSDKApplicationDelegate", referenced from:
objc-class-ref in AppDelegate.o
"_OBJC_CLASS_$_Mixpanel", referenced from:
objc-class-ref in AnalyticsProvider.o
"_OBJC_CLASS_$_PHFComposeBarView", referenced from:
objc-class-ref in ForumBaseVC.o
"_OBJC_CLASS_$_RKDynamicMapping", referenced from:
objc-class-ref in WikiArticle.o
"_OBJC_CLASS_$_RKObjectManager", referenced from:
objc-class-ref in MLDataProvider.o
"_OBJC_CLASS_$_RKObjectMapping", referenced from:
objc-class-ref in WikiError.o
objc-class-ref in WikiArticle.o
objc-class-ref in WikiLogin.o
objc-class-ref in WikiQuery.o
objc-class-ref in Model.o
objc-class-ref in WikiThumbnail.o
objc-class-ref in MLError.o
How do I solve this?
Regards

In my iOS app undefined symbols for architecture x86_64

Trying to get my app ready for arm64 and updating all my pods. I updated all the pods but getting this error so app will not compile.
Undefined symbols for architecture x86_64:
"_OBJC_CLASS_$_AFHTTPClient", referenced from:
objc-class-ref in MYAPP.o
"_OBJC_CLASS_$_AFJSONRequestOperation", referenced from:
objc-class-ref in MYAPP.o
"_OBJC_CLASS_$_AFNetworkActivityIndicatorManager", referenced from:
objc-class-ref in MYAPP.o
"_OBJC_CLASS_$_RKAttributeMapping", referenced from:
objc-class-ref in MYAPP.o
"_OBJC_CLASS_$_RKEntityMapping", referenced from:
objc-class-ref in MYAPP.o
"_OBJC_CLASS_$_RKErrorMessage", referenced from:
objc-class-ref in MYAPP.o
"_OBJC_CLASS_$_RKManagedObjectStore", referenced from:
objc-class-ref in MYAPP.o
objc-class-ref in NSManagedObject+ActiveRecord.o
"_OBJC_CLASS_$_RKObjectManager", referenced from:
objc-class-ref in MYAPP.o
_OBJC_CLASS_$_STObjectManager in STObjectManager.o
objc-class-ref in NSManagedObject+EasyFetching.o
"_OBJC_CLASS_$_RKObjectMapping", referenced from:
objc-class-ref in MYAPP.o
"_OBJC_CLASS_$_RKRelationshipMapping", referenced from:
objc-class-ref in MYAPP.o
"_OBJC_CLASS_$_RKRequestDescriptor", referenced from:
objc-class-ref in MYAPP.o
"_OBJC_CLASS_$_RKResponseDescriptor", referenced from:
objc-class-ref in MYAPP.o
"_OBJC_CLASS_$_RKRoute", referenced from:
objc-class-ref in MYAPP.o
There's a couple of things that might fix this:
Check Your-Workspace/Build Settings and Pods/Build Settings for the following items: Architectures, Build Active Architecture Only, Valid Architectures. All three should match between both workspaces.
Try cleaning (CMD-Shift-K) and also cleaning the build folder (CMD-Option-Shift-K).
I fixed this by going back from 1.0.1 version to 0.39.0.beta.3 version of cocoapods.

Using Parse Framework with Xcode 6.2 - ie. 64 bit

I added the latest framework 1.64 to my project and now it won't build with the following errors:-
Undefined symbols for architecture x86_64:
"_BFTaskMultipleExceptionsException", referenced from:
___53+[PFObject(Private) deleteAllAsync:withSessionToken:]_block_invoke214 in Parse(PFObject.o)
___65+[PFObject(Private) _deepSaveAsync:withCurrentUser:sessionToken:]_block_invoke311 in Parse(PFObject.o)
"_OBJC_CLASS_$_BFExecutor", referenced from:
objc-class-ref in Parse(Parse.o)
objc-class-ref in Parse(PFCommandCache.o)
objc-class-ref in Parse(PFConfig.o)
objc-class-ref in Parse(PFObject.o)
objc-class-ref in Parse(PFPinningEventuallyQueue.o)
objc-class-ref in Parse(PFUser.o)
objc-class-ref in Parse(PFEventuallyQueue.o)
...
"_OBJC_CLASS_$_BFTask", referenced from:
objc-class-ref in Parse(PFQuery.o)
objc-class-ref in Parse(Parse.o)
objc-class-ref in Parse(PFCommandCache.o)
objc-class-ref in Parse(PFConfig.o)
objc-class-ref in Parse(PFEventuallyPin.o)
objc-class-ref in Parse(PFInstallation.o)
objc-class-ref in Parse(PFObject.o)
...
"_OBJC_CLASS_$_BFTaskCompletionSource", referenced from:
objc-class-ref in Parse(PFObject.o)
objc-class-ref in Parse(PFOfflineStore.o)
objc-class-ref in Parse(PFEventuallyQueue.o)
objc-class-ref in Parse(PFSQLiteDatabase.o)
objc-class-ref in Parse(BFTask+Private.o)
objc-class-ref in Parse(PFNetworkCommandRunner.o)
objc-class-ref in Parse(PFTaskHTTPRequestOperation.o)
...
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code
Seems to suggest that the Parse framework isn't 64bit. Any ideas how to fix, as all apps submitted to the App Store have to be 64bit.
I had the same problem as you and first off you may try to overcome that by upgrading Parse.framework since it already supported 64-bit. Also make sure you setup architectures correctly for that. You may check this out for more details. Also install new Facebook SDK. In my case once I've done the above, my errors are gone. Hope this helps.

Cocoapods ld: symbol(s) not found for architecture armv7s

After updating my pods and xcode, I've come across problems in the last phase of the build process (linking). I've tried switching up the architectures as well as setting the build active architecture to on and off, but it doesn't seem to be doing anything.
Undefined symbols for architecture arm64:
"_OBJC_CLASS_$_SRWebSocket", referenced from:
objc-class-ref in BLYClient.o
"_OBJC_CLASS_$_Reachability", referenced from:
objc-class-ref in BLYClient.o
"_kReachabilityChangedNotification", referenced from:
-[BLYClient initWithAppKey:delegate:hostName:] in BLYClient.o
"_OBJC_CLASS_$_FBRequestConnection", referenced from:
objc-class-ref in LCAccountRegistrationViewController.o
"_OBJC_CLASS_$_FBSession", referenced from:
objc-class-ref in LCAccountRegistrationViewController.o
"_OBJC_CLASS_$_JASidePanelController", referenced from:
_OBJC_CLASS_$_LCMainRevealController in LCMainRevealController.o
"_OBJC_CLASS_$_SEEPhoneNumberFormatter", referenced from:
objc-class-ref in LCPhoneFormatter.o
"_OBJC_CLASS_$_SKInnerShadowLayer", referenced from:
objc-class-ref in LCInnerShadowView.o
"_OBJC_CLASS_$_AFHTTPClient", referenced from:
_OBJC_CLASS_$_LCHTTPClient in LCHTTPClient.o
"_OBJC_METACLASS_$_JASidePanelController", referenced from:
_OBJC_METACLASS_$_LCMainRevealController in LCMainRevealController.o
"_OBJC_CLASS_$_BITHockeyManager", referenced from:
objc-class-ref in LCAppDelegate.o
"_OBJC_CLASS_$_AFNetworkActivityIndicatorManager", referenced from:
objc-class-ref in LCHTTPClient.o
"_OBJC_CLASS_$_Lockbox", referenced from:
objc-class-ref in LCKey.o
objc-class-ref in LCSettings.o
"_OBJC_CLASS_$_AFHTTPRequestOperation", referenced from:
objc-class-ref in LCApi+Internal.o
"_OBJC_CLASS_$_AFHTTPRequestOperationLogger", referenced from:
objc-class-ref in LCAppDelegate.o
"_OBJC_CLASS_$_AFJSONRequestOperation", referenced from:
objc-class-ref in LCHTTPClient.o
"_OBJC_METACLASS_$_AFHTTPClient", referenced from:
_OBJC_METACLASS_$_LCHTTPClient in LCHTTPClient.o
"_OBJC_CLASS_$_RHDisplayLinkStepper", referenced from:
objc-class-ref in LCLockSwipeView.o
objc-class-ref in LCLockUpdatingProgressView.o
"_OBJC_CLASS_$_MagicalRecord", referenced from:
objc-class-ref in LCAppDelegate.o
objc-class-ref in LCApi+Locks.o
objc-class-ref in LCApi+Keys.o
objc-class-ref in LCBTLockScanner.o
objc-class-ref in LCBTLockForegroundScanner.o
objc-class-ref in LCBTLock.o
objc-class-ref in LCRootViewController.o
...
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Any ideas?
I just had the same issue. The "Other Linker Flags" was overriding the flags from CocoaPods. In fact I got a warning about it-
[!] The `sftest [Debug]` target overrides the `OTHER_LDFLAGS` build setting defined in `Pods/Target Support Files/Pods-sftest/Pods-sftest.debug.xcconfig'. This can lead to problems with the CocoaPods installation
- Use the `$(inherited)` flag, or
- Remove the build settings from the target.
Changing "Other Linker Flags" to $(inherited) did indeed solve the problem.

SWIFT Apple Mach-O Linker Error "_OBJC_CLASS_$_BFExectur"

Trying to use Parse with X-code and objective C. 4 different errors pop up. Suggestions?
Undefined symbols for architecture x86_64:
"_OBJC_CLASS_$_BFExecutor", referenced from:
objc-class-ref in Parse(BFTask+Private.o)
l_OBJC_$_CATEGORY_BFExecutor_$_Background in Parse(BFTask+Private.o)
"_OBJC_CLASS_$_BFTask", referenced from:
objc-class-ref in Parse(PSObject.o)
objc-class-ref in Parse(PFFile.o)
objc-class-ref in Parse(PFNetworkCommandRunner.o)
objc-class-ref in Parse(PFQuery.o)
objc-class-ref in Parse(PFRetryingCommandRunner.o)
objc-class-ref in Parse(PFTaskQueue.o)
objc-class-ref in Parse(PFUser.o)
...
"_OBJC_CLASS_$_BFTaskCompletionSource", referenced from:
objc-class-ref in Parse(PFObject.o)
objc-class-ref in Parse(PFCommandCache.o)
objc-class-ref in Parse(PFFile.o)
objc-class-ref in Parse(PFNetworkCommandRunner.o)
objc-class-ref in Parse(BFTask+Private.o)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
You need to add the Bolts.framework as well. That's why you are getting those errors! :-)

Resources