Apple Mach-O Linker Error for arm64 - objective-c

I know there are a few topics on this, but none seem to do the trick;
I'm testing to the device and I get 5 errors, all Apple Mach-O Linker Errors. The code looks likes this;
Any thoughts? I've tried to play around with the Active Architecture but nothing seems to work.
Thank you!
Undefined symbols for architecture arm64:
"_OBJC_CLASS_$_ALAssetsLibrary", referenced from:
objc-class-ref in libCordova.a(CDVURLProtocol.o)
"_kUTTagClassMIMEType", referenced from:
___30-[CDVURLProtocol startLoading]_block_invoke in libCordova.a(CDVURLProtocol.o)
"_OBJC_CLASS_$_CLLocation", referenced from:
l_OBJC_$_CATEGORY_CLLocation_$_JSONMethods in libCordova.a(CDVShared.o)
"_UTTypeCopyPreferredTagWithClass", referenced from:
___30-[CDVURLProtocol startLoading]_block_invoke in libCordova.a(CDVURLProtocol.o)
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

By looking at your errors I think you need to import some frameworks , Just try to import following frameworks :
CoreLocation
ALAssetsLibrary
MobileCoreServices.framework

Related

Stripe + Swift architecture arm64 error

I am trying to integrate Stripe with Xcode using Swift. I installed the podfile for Stripe and imported #import "Stripe.h" to my bridging file. All of other files in the bridge file work fine except Stripe. This is the error that i get when i initialize Stripe.setDefaultPublishableKey(""):
Undefined symbols for architecture arm64:
"_OBJC_CLASS_$_Stripe", referenced from:
type metadata accessor for ObjectiveC.Stripe in AppDelegate.o
"_OBJC_CLASS_$_STPPaymentCardTextField", referenced from:
objc-class-ref in STPCheckoutView.o
"_OBJC_CLASS_$_STPAPIClient", referenced from:
objc-class-ref in STPCheckoutView.o
"_OBJC_CLASS_$_STPCard", referenced from:
objc-class-ref in STPCheckoutView.o
"_StripeDomain", referenced from:
-[STPCheckoutView createToken:] in STPCheckoutView.o
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Any help would be much appreciated.

"_OBJC_CLASS_$_MSClient", referenced from: objc-class-ref in AuthService.o

I git clone this ios project form
https://github.com/Azure/azure-mobile-services. That project is an example of using azure mobile service on ios. But when I compile it under XCode6, I get the follwing error:
ld: warning: ignoring file
/Users/JOHN/Src/iOS-MobileServices-Authentication/source/client/AuthenticationDemo/WindowsAzureMobileServices.framework/WindowsAzureMobileServices,
missing required architecture x86_64 in file
/Users/JOHN/Src/iOS-MobileServices-Authentication/source/client/AuthenticationDemo/WindowsAzureMobileServices.framework/WindowsAzureMobileServices
(3 slices) Undefined symbols for architecture x86_64:
"_OBJC_CLASS_$_MSClient", referenced from:
objc-class-ref in AuthService.o "_OBJC_CLASS_$_MSUser", referenced from:
objc-class-ref in AuthService.o ld: symbol(s) not found for architecture x86_64 clang: error: linker command failed with exit code
1 (use -v to see invocation)
Does anyone know how to fix this?
Thank you.
In your project, build settings, set your valid architectures to just be "Standard Architecture (armv7, armv7s)" and not "Standard architectures (including 64-bit)"
and also set build active architecture only to No in all cases ie debug and release.
Currently the SDK is built with support for 5.1 which doesn't support a 64 bit build.

GPUImage issues running on simulator

So I've been trying to get GPUImage library to work in a project, and whilst it works on the device, does not work on simulator. I've tried in Xcode 5, using both Retina and non-retina simulators and get the following error:
Undefined symbols for architecture i386:
"_OBJC_CLASS_$_GPUImageBuffer", referenced from:
objc-class-ref in StartViewController.o
"_OBJC_CLASS_$_GPUImageVideoCamera", referenced from:
objc-class-ref in StartViewController.o
"_OBJC_CLASS_$_GPUImageView", referenced from:
objc-class-ref in StartViewController.o
"_OBJC_CLASS_$_GPUImageiOSBlurFilter", referenced from:
objc-class-ref in StartViewController.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
My Build Settings are as follows;
I need for this to run on simulator as well as on device. I have tried making Build Active Architecture Only NO, as well as playing around with Valid Architectures, to have armv7 by itself, armv7 and armv7s, and just armv64, but to no avail.
Any help would be amazing.
Thanks in advance
Build Phases -> Link Binary With Libraries ...then add "GPUImage.framework", "libGPUImage.a"
I just deleted "arm64" from "Valid Architectures" and it works for me now. Maybe it helps.

"_OBJC_CLASS_$_",referenced from:

Hello i am getting the following errors and warnings if i build the program on simulator,but if i run it on the real device these things disappears?why do i get this?any idea?
ld: warning: ignoring file /Users/interaxisnetworks/Desktop/Test/TestProg/audiocall/PortSIPLib.framework/PortSIPLib, missing required architecture x86_64 in file /Users/interaxisnetworks/Desktop/Test/TestProg/audiocall/PortSIPLib.framework/PortSIPLib (3 slices)
Undefined symbols for architecture x86_64:
"_OBJC_CLASS_$_PortSIPSDK", referenced from:
objc-class-ref in AppDelegate.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Once i run the app on phone,i am not getting these warnings at all.But sometimes when i open the program and do build on simulator i get these errors and warnings.
i have gone through answers for similar problems,added app delegate.m in build settings,still these errors are coming.
The PortSIPLib.framework you tried to link your app with seems to be iOS only. You should ask the provider of the framework for a binary that is suitable for the simulator. If he can't or won't provide one, then there is nothing much you can do, I'm afraid.

"_OBJC_CLASS_$_", referenced from: error in xcode 4.3.2

So today I ran into a major problem. I got a problem involving my viewcontroller on xcode 4.3.2 as seen in the attached code:
Undefined symbols for architecture i386:
"_OBJC_CLASS_$_SecondViewController", referenced from:
objc-class-ref in Birdflix_ProViewController.o
"_OBJC_CLASS_$_ThirdViewController", referenced from:
objc-class-ref in Birdflix_ProViewController.o
"_OBJC_CLASS_$_FourthViewController", referenced from:
objc-class-ref in Birdflix_ProViewController.o
"_OBJC_CLASS_$_Author", referenced from:
objc-class-ref in Birdflix_ProViewController.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
I noticed that these errors only appear when I program IBActions linking my viewcontroller to additional classes. If I delete the IBActions the errors disappear. Any help is appreciated.
Thanks
Please add your SecondViewController.m or SecondViewController.mm, ThirdViewController.m/.mm, FourthViewController.m/.mm, Birdflix_ProViewController.m/.mm files to the Compile sources to build successfully.
To add files to compile source do the following
Build phase in xcode
Select Compile Sources
Press + button to add .m/.mm file
I think that you have added some other static library. And you have not linked it in your project target. Fist clean all targets and build again then check project setting bar shows simulator version properly for active build target.
Hope it will help.