I updated my cocoapods version to 1.0 and am now getting a slew of errors regarding architecture. This is what my errors look like:
Undefined symbols for architecture arm64:
"_OBJC_CLASS_$_Reachability", referenced from:
objc-class-ref in ReachabilityManager.o
(maybe you meant: _OBJC_CLASS_$_ReachabilityManager)
"_OBJC_CLASS_$_PBJVision", referenced from:
objc-class-ref in NewSpinViewController.o
"_PBJVisionPhotoImageKey", referenced from:
-[NewSpinViewController vision:capturedPhoto:error:] in NewSpinViewController.o
"_kReachabilityChangedNotification", referenced from:
-[NoInternetViewController viewDidLoad] in NoInternetViewController.o
"_PBJVisionPhotoThumbnailKey", referenced from:
-[NewSpinViewController vision:capturedPhoto:error:] in NewSpinViewController.o
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
I've spent hours trying to fix this by toggling settlings under build settings but nothing is working for me.
This is what I currently have for my Architectures
Anyone have any ideas?
Try this: delete derived data and compile again. Sometimes the pod libraries simply don't get compiled even you cleaned the project, this happened to me when I updated to cocoapods 1.0.1.
Related
I'm getting the following error when building my project in Xcode 10.1 (I have to use this old version at work).
Undefined symbols for architecture armv7:
"_OBJC_CLASS_$_MBDocumentOverlayViewController", referenced from:
objc-class-ref in BlinkIdPlugin.o
"_OBJC_CLASS_$_MBMrtdRecognizer", referenced from:
objc-class-ref in BlinkIdPlugin.o
"_OBJC_CLASS_$_MBViewControllerFactory", referenced from:
objc-class-ref in BlinkIdPlugin.o
"_OBJC_CLASS_$_MBRecognizerCollection", referenced from:
objc-class-ref in BlinkIdPlugin.o
"_OBJC_CLASS_$_MBDocumentOverlaySettings", referenced from:
objc-class-ref in BlinkIdPlugin.o
ld: symbol(s) not found for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)
I'm getting the .framework and .bundle from the blinkid-ios sample in MicroBlink's github repository. I tried git-lfs pullbut nothing happened which leads me to believe that all lfs files were pulled(?). I'm also using cordova 7.1.0 (I also have to use this old version at work).
Any help appreciated.
For anyone encountering a similar issue in the future - this specific issue was caused by the change in the case in the name - MicroBlink was renamed to Microblink. Even though git-lfs pulled the files, Cordova couldn't see the actual framework.
Disclaimer: I work for the Microblink team that's behind the BlinkID library in question.
I'm relatively new to iOS development. I'm not sure what to do about resolving the following errors that I believe are due to referencing a bluetooth library. What can I do to debug/fix this?
Undefined symbols for architecture armv7:
"_CBCentralManagerScanOptionAllowDuplicatesKey", referenced from:
_nclSStartScan in libNCLiOS.a(nclCb.o)
"_CBAdvertisementDataManufacturerDataKey", referenced from:
-[Boss centralManager:didDiscoverPeripheral:advertisementData:RSSI:] in libNCLiOS.a(nclCb.o)
"_OBJC_CLASS_$_CBUUID", referenced from:
objc-class-ref in libNCLiOS.a(nclCb.o)
"_OBJC_CLASS_$_CBCentralManager", referenced from:
objc-class-ref in libNCLiOS.a(nclCb.o)
ld: symbol(s) not found for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)
I haven't done Bluetooth related development on IOS but the messages might be related to the missing Bluetooth framework in the project files.
Have you added them ?
IOBluetooth.framework
IOBluetoothUI.framework
I know there has been countless Mach-O Linker error posts and I have looked through at least a dozen trying to find the solution to my problem. Many solutions commented that I must "check the box" or check the compile sources to make sure my .m file was properly imported and yes, I did all of those. I have been at this for hours and I can't seem to make anything from the below error:
Undefined symbols for architecture x86_64:
"_OBJC_CLASS_$_JSQMessage", referenced from:
objc-class-ref in ChatView.o
"_OBJC_CLASS_$_JSQMessagesAvatarImageFactory", referenced from:
objc-class-ref in ChatView.o
"_OBJC_CLASS_$_JSQMessagesBubbleImageFactory", referenced from:
objc-class-ref in ChatView.o
"_OBJC_CLASS_$_JSQMessagesTimestampFormatter", referenced from:
objc-class-ref in ChatView.o
"_OBJC_CLASS_$_JSQMessagesViewController", referenced from:
_OBJC_CLASS_$_ChatView in ChatView.o
"_OBJC_CLASS_$_JSQPhotoMediaItem", referenced from:
objc-class-ref in ChatView.o
"_OBJC_CLASS_$_JSQSystemSoundPlayer", referenced from:
objc-class-ref in ChatView.o
"_OBJC_METACLASS_$_JSQMessagesViewController", referenced from:
_OBJC_METACLASS_$_ChatView in ChatView.o
"_kJSQMessagesCollectionViewCellLabelHeightDefault", referenced from:
-[ChatView collectionView:layout:heightForCellTopLabelAtIndexPath:] in ChatView.o
-[ChatView collectionView:layout:heightForMessageBubbleTopLabelAtIndexPath:] in ChatView.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 or advice as to a fix to the above error would be MUCH appreciated and would finally allow me to move on from this gripping road block. Thank you in advance!
I had the same error when using this library through Cocoapods. I noticed this warning message when executing pod install:
[!] The Application [Debug] target overrides the OTHER_LDFLAGS
build setting defined in `Pods/Target Support
Files/Pods/Pods.debug.xcconfig'. This can lead to problems with the
CocoaPods installation
I added $(inherited) to OTHER_LDFLAGS in the build settings of my project and that fixed the problem!
Looks like you're missing a relevant 'Framework'. Does the documentation specify a required framework. I would guess that it needs the messaging one.
I am trying to add an AdManager File in my iphone app so that it has differernt types of ads. (revmob, adwhirl, chartboost etc). At the same time I want the In App-Purchase functionality as well. I am working correct on that but there is some issues and bugs which I don't understand what are, I even added all the required frameworks.
Undefined symbols for architecture i386:
"_OBJC_METACLASS_$_CDataScanner", referenced from:
_OBJC_METACLASS_$_CJSONScanner in CJSONScanner.o
"_SKStoreProductParameterITunesItemIdentifier", referenced from:
-[RevMobStoreController openStoreWithITunesItemId:] in RevMobAds(RevMobStoreController.o)
"_OBJC_CLASS_$_SKStoreProductViewController", referenced from:
objc-class-ref in RevMobAds(RevMobStoreController.o)
"_OBJC_IVAR_$_CDataScanner.current", referenced from:
-[CJSONScanner scanNotQuoteCharactersIntoString:] in CJSONScanner.o
"_OBJC_CLASS_$_CDataScanner", referenced from:
l_OBJC_$_CATEGORY_CDataScanner_$_CDataScanner_Extensions in CDataScanner_Extensions.o
_OBJC_CLASS_$_CJSONScanner in CJSONScanner.o
"_OBJC_IVAR_$_CDataScanner.end", referenced from:
-[CJSONScanner scanNotQuoteCharactersIntoString:] in CJSONScanner.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Did you add the StoreKit framework?
That would certainly resolve the first couple of linker errors.
Following the instructions here: http://hoishing.wordpress.com/2011/08/23/gdata-objective-c-client-setup-in-xcode-4/
I added GData to my iOS 5 project. When it's time to archive the project I get the following error:
Undefined symbols for architecture armv7:
"_OBJC_CLASS_$_GDataServiceGoogleYouTube", referenced from:
objc-class-ref in DataManager.o
"_OBJC_CLASS_$_GDataEntryYouTubeVideo", referenced from:
objc-class-ref in DataManager.o
objc-class-ref in ListController.o
objc-class-ref in ShareController.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 checked the build settings for the GData.xcodeproj -> GDataTouchStaticLib, and this is what I set them to as seen by this pic: )
Any help is appreciated, to help get my project archived.
You haven't linked the libraries properly. Make sure you follow the directions carefully when it comes to adding the library paths. See Undefined symbols for architecture armv7 for more information.