So On the simulator It works all perfect. No errors, nothing
Now I want to put it on my iPod and I get some unknow errors and I dont't know how to fix them.
-I have the MediaPlayer.framework and it is included in my build
Here is the error:
ld: warning: ignoring file /Users/NAME/Desktop/XCode/PROJECT/MediaPlayer.framework/MediaPlayer, file was built for unsupported file format which is not the architecture being linked (armv7)
Undefined symbols for architecture armv7:
"_OBJC_CLASS_$_MPMoviePlayerViewController", referenced from:
objc-class-ref in MoviePlayViewController.o
"_MPMoviePlayerDidEnterFullscreenNotification", referenced from:
-[MoviePlayViewController viewDidLoad] in MoviePlayViewController.o
"_MPMoviePlayerWillExitFullscreenNotification", referenced from:
-[MoviePlayViewController viewDidLoad] in MoviePlayViewController.o
"_MPMoviePlayerPlaybackDidFinishNotification", referenced from:
-[MoviePlayViewController viewDidLoad] in MoviePlayViewController.o
"_MPMoviePlayerPlaybackDidFinishReasonUserInfoKey", referenced from:
-[MoviePlayViewController playbackFinished:] in MoviePlayViewController.o
"_MPMoviePlayerWillEnterFullscreenNotification", referenced from:
-[MoviePlayViewController viewDidLoad] in MoviePlayViewController.o
"_MPMoviePlayerDidExitFullscreenNotification", referenced from:
-[MoviePlayViewController viewDidLoad] in MoviePlayViewController.o
ld: symbol(s) not found for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Can anyone tell me what the error means and what I have to check? :)
Thanks
The only thing whcih is understandable for me is: unsupported file format.
It can't find the MediaPlayer.framework I believe is the problem. You need to update your Library Header Search Path in the build settings. It is looking for it on your desktop I believe.
You may need to add it to your target, relink it, or just make sure its pointing in the correct place.
Related
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.
I have an app where first time I used PARSE. Then for second update, client requested GoogleMaps . When setup GMS, it said: " Choose your project, rather than a specific target, and open the Build Settings tab. In the Other Linker Flags section, add -ObjC. If these settings are not visible, change the filter in the Build Settings bar from Basic to All. "
If I set -ObjC to linker flags, I have this kind of errors from parse:
Undefined symbols for architecture i386: "_FBTokenInformationExpirationDateKey", referenced from:
-[PFFacebookTokenCachingStrategy cacheTokenInformation:] in Parse(PFFacebookTokenCachingStrategy.o)
-[PFFacebookTokenCachingStrategy expirationDate] in Parse(PFFacebookTokenCachingStrategy.o)
-[PFFacebookTokenCachingStrategy setExpirationDate:] in Parse(PFFacebookTokenCachingStrategy.o)
"_FBTokenInformationTokenKey", referenced from:
-[PFFacebookTokenCachingStrategy accessToken] in Parse(PFFacebookTokenCachingStrategy.o)
-[PFFacebookTokenCachingStrategy setAccessToken:] in Parse(PFFacebookTokenCachingStrategy.o)
"_FBTokenInformationUserFBIDKey", referenced from:
-[PFFacebookTokenCachingStrategy facebookId] in Parse(PFFacebookTokenCachingStrategy.o)
-[PFFacebookTokenCachingStrategy setFacebookId:] in Parse(PFFacebookTokenCachingStrategy.o)
"OBJC_CLASS$_FBAppCall", referenced from:
objc-class-ref in Parse(PFFacebookAuthenticationProvider.o)
"OBJC_CLASS$_FBRequest", referenced from:
objc-class-ref in Parse(PFFacebookAuthenticationProvider.o)
"OBJC_CLASS$_FBSession", referenced from:
objc-class-ref in Parse(PFFacebookAuthenticationProvider.o)
"OBJC_CLASS$_FBSessionTokenCachingStrategy", referenced from:
_OBJC_CLASS_$_PFFacebookTokenCachingStrategy in Parse(PFFacebookTokenCachingStrategy.o)
"OBJC_METACLASS$_FBSessionTokenCachingStrategy", referenced from:
_OBJC_METACLASS_$_PFFacebookTokenCachingStrategy in Parse(PFFacebookTokenCachingStrategy.o)
ld: symbol(s) not found for architecture i386 clang: error: linker command failed with exit code 1 (use -v to see invocation)
I found a solution to do not add Facebook in app and to use this kind of flag: -force_load
And after using this, I have also error: ld: file not found: clang: error: linker command failed with exit code 1 (use -v to see invocation)
I tried different types of using this, like : -force_load - the same error -force_load pathOfFramework/ - the same error
It is possible to give me a solution for this ?
Thanks a lot !
The problem is that parse has classes that it doesn't load if it doesn't need. For example, it only imports the Facebook classes if FacebookSDK is installed. -ObjC loads all of these, but they are dependent on FacebookSDK. When it can't find the files it needs, it throws errors:
Change:
-ObjC
To:
-force_load $(PROJECT_DIR)/GoogleMaps.framework/GoogleMaps
Source: Here
When I just add a .framework to the "Link Binary With Libraries" list by dragging it from the Project Navigator to the tab I get an error.
My error...
Undefined symbols for architecture i386:
"_OBJC_CLASS_$_UAPush", referenced from:
objc-class-ref in KinveyKit(KCSPush.o)
"_OBJC_CLASS_$_UAirship", referenced from:
objc-class-ref in KinveyKit(KCSPush.o)
"_UAirshipTakeOffOptionsAirshipConfigKey", referenced from:
-[KCSPush initializeUrbanAirshipWithOptions:error:] in KinveyKit(KCSPush.o)
"_logging", referenced from:
-[KCSPush application:didReceiveRemoteNotification:] in KinveyKit(KCSPush.o)
(maybe you meant: _OBJC_IVAR_$_KCSLogManager._loggingState, _OBJC_IVAR_$_FBLogger._loggingBehavior )
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
When I remove the .framework, the app runs without errors.
Also when I look inside my Headers folder inside Kinvey.framework, I see header files with red names. Does that have anything to do with the problem perhaps?
Why is this happening??
UAPush = Urban Airship Push.
Add libUAirship.a to your project.
Here you can download lib.
Complete Documentation about urban Airship push
Also checkout this urban Airship common error
I am using iFrameExtractor it get compiled successfully on iphone device but when i am using it on simulator it show following error.
"_av_dict_set", referenced from:
-[VideoFrameExtractor initWithVideo:usesTcp:] in VideoFrameExtractor.o
"_avcodec_open2", referenced from:
-[VideoFrameExtractor initWithVideo:usesTcp:] in VideoFrameExtractor.o
-[VideoFrameExtractor setupAudioDecoder] in VideoFrameExtractor.o
"_avformat_close_input", referenced from:
-[VideoFrameExtractor dealloc] in VideoFrameExtractor.o
"_avformat_find_stream_info", referenced from:
-[VideoFrameExtractor initWithVideo:usesTcp:] in VideoFrameExtractor.o
"_avformat_open_input", referenced from:
-[VideoFrameExtractor initWithVideo:usesTcp:] in VideoFrameExtractor.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
can any one help me out with clear step by step solution. As I am new to ios.
Thank you
Chandra Pr.
looks like its not finding the required ffmpeg libraries, might be because your libs are compiled for device but looks like you are trying to build on simulator.
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.