If you try to include admob ios xcode gives following error and fails for admob plugin. How to solve the problem? Or for the new version admob plugin has been cancelled?
"SpEventGroup::FireEvent(TEventID, int, char*, SpBrParcelable*)", referenced from:
-[SpBrAdViewDelegate adViewDidReceiveAd:] in libAdmobEnabled.a(SpBrAdViewDelegate.o)
ld: symbol(s) not found for architecture armv7
Is there any body else who can display admob for ios? As i see the updated version of "Smartface in Action" also don't show admob.
Related
I've read close to 50 threads on here, regarding linking frameworks to an Xcode project, but I've yet to find one that covers an issue I'm having with Facebook's Audience Network framework.
I'm using Xcode 4.2.3 (I'm on an old mac with OS X Lion - don't ask!), building for iOS 6.1, using Facebook SDK 3.2.1.
I'm trying to test banner ad formats within specific view controllers, however, getting an error every time I build the code, based exactly on the tutorials, even Facebook's sample code isn't compiling. I've added FBAudienceNetwork.framework to almost every folder on my machine, added via dragging and dropping, and via the Link Binary with Libraries option. I've tried to changing the Framework Search paths, to no avail.
I'm using the following frameworks: AdSupport, StoreKit, CoreMotion, UIKit, Foundation, CoreGraphics
Getting the following error:
Undefined symbols for architecture i386:
"_OBJC_CLASS_$_CAShapeLayer", referenced from:
objc-class-ref in FBAudienceNetwork(FBAdChoicesView.o)
"_OBJC_CLASS_$_CATransaction", referenced from:
objc-class-ref in FBAudienceNetwork(FBAdUtility.o)
objc-class-ref in FBAudienceNetwork(FBAdMediumRectangleView.o)
"_OBJC_CLASS_$_NSURLSession", referenced from:
objc-class-ref in FBAudienceNetwork(FBAdUtility.o)
"_kCATransactionDisableActions", referenced from:
-[FBAdMediumRectangleView updateViewForSize:view:] in FBAudienceNetwork(FBAdMediumRectangleView.o)
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Any suggestions?
UPDATE: Added in Quartzcore.framework, and errors now reduced to;
Undefined symbols for architecture i386:
"_OBJC_CLASS_$_NSURLSession", referenced from:
objc-class-ref in FBAudienceNetwork(FBAdUtility.o)
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
I've made Foundation.framework optional. Build settings armv7, armv7s, iOS 6.1, Simulator only. Build Active Architecture ONLY Yes/No.
I'm a software engineer on the Audience Network team at Facebook, and I have some suggestions that may help.
Try adding "QuartzCore.framework" to your target. That should resolve the _OBJC_CLASS_$_CA* linker errors. Classes with a "CA" prefix are part of QuartzCore/Core Animation.
If the "_OBJC_CLASS_$_NSURLSession" error still appears, try weak-linking the Foundation framework by setting the "Foundation.framework" to "optional" in Build Phases, Link Binary With Libraries.
You should be able to successfully build after those steps. Hope that helps!
NSURLSession was added in iOS 7.0. Any improper reference to it in your app will cause this problem when ran on a device with iOS 6.0. You need to use proper techniques to ensure the class is never referenced under iOS 6.0 or make your deployment target iOS 7.0.
I'm currently integrating Flurry AppCircle Ads in my iPhone application with AdMob Mediation; I'm developing for iOS 6.
I've been following Flurry's integration instructions from here but in the end, the project doesn't even compile. Every needed Framework is linked along with the adapter for AdMob Mediation.
Here are the errors that are thrown:
Undefined symbols for architecture i386:
"_OBJC_CLASS_$_FlurryDataSenderBase", referenced from:
_OBJC_CLASS_$_AdLogManager in libFlurryAds.a(libFlurryAds.a-i386-master.o)
"_OBJC_CLASS_$_FlurryDataSenderBlockInfo", referenced from:
objc-class-ref in libFlurryAds.a(libFlurryAds.a-i386-master.o)
"_OBJC_CLASS_$_FlurryImpl", referenced from:
objc-class-ref in libFlurryAds.a(libFlurryAds.a-i386-master.o)
"_OBJC_CLASS_$_FlurrySharedData", referenced from:
objc-class-ref in libFlurryAds.a(libFlurryAds.a-i386-master.o)
"_OBJC_METACLASS_$_FlurryDataSenderBase", referenced from:
_OBJC_METACLASS_$_AdLogManager in libFlurryAds.a(libFlurryAds.a-i386-master.o)
ld: symbol(s) not found for architecture i386
Now I've figured on my own that these errors can be avoided and the app can be build if I remove -ObjC flag from Other Linker Flags, but this flag is crucial, otherwise AdMob Mediation throws an error in runtime when an ad is requested:
-[GADObjectPrivate changeState:]: unrecognized selector sent to instance 0xc9cc000
Any help will be greatly appreciated.
You may already have figured this out by now, but I saw this error only when I had mismatched versions between the main Flurry SDK and the Flurry Ads SDK — specifically I added the latest version of the Ads SDK (4.2.0) to an existing project that was already using the main Flurry SDK but neglected to update the latter, so it was still on version 4.0.0.
Updating my copy of the Flurry SDK caused the linkage problems to go away.
Following up on that tip, I looked inside the 4.2.0 libFlurry.a and saw that it defines the symbols _OBJC_CLASS_$_FlurryDataSenderBlockInfo and the rest. So if you're linking against that then the symbols should be defined.
So I'd say that either:
you're not linking against libFlurry.a at all; or
you're linking against an old version of libFlurry.a.
I'm trying to integrate Box in iPhone app so that I can upload images on box. I have downloaded the example but its giving me error
here is the error
Error 1.
Undefined symbols for architecture i386:
"_NSURLIsExcludedFromBackupKey", referenced from:
+[BoxLocalFileGroup addSkipBackupAttributeToItemAtURL:] in Box(BoxLocalFileCache.o) ld: symbol(s) not found for architecture
i386
Error2
unable to open executable
'/Users/bcod/Library/Developer/Xcode/DerivedData/BoxSDK-gzgrgayfjmthqlgnomqiuilpvyai/Build/Products/Debug-iphonesimulator/BoxSDK.app/BoxSDK'
Thanks
if you want to integrating Box in Iphone App download the sample project
I am trying to use the AdMob in my test application when I rum my application i am getting the following error as shown below.
Undefined symbols for architecture i386:
"_OBJC_CLASS_$_ASIdentifierManager", referenced from:
objc-class-ref in libGoogleAdMobAds.a(GADIdentifierUtilities.o)
"_OBJC_CLASS_$_SKStoreProductViewController", referenced from:
objc-class-ref in libGoogleAdMobAds.a(GADOpener.o)
"_SKStoreProductParameterITunesItemIdentifier", referenced from:
-[GADOpener openInAppStore:fallbackURLString:] in libGoogleAdMobAds.a(GADOpener.o)
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
I googled around this errors and everyone telling to add the AdSupport.framework. But when I try to add that framework in my Xcode4.1 and Xcode4.4 there is no AdSupport.framework is not missing. Where can I get it and how to add that framework.
AdSupport.framework available only in iOS6+, so you won't be able to find it in XCode version prior to 4.5
UPD:
According to AdMob 6.2.0 changelog:
Required to use Xcode 4.5 and build against iOS 6. The minimum deployment is iOS 4.3.
I just updated to Xcode 4 and iOS 4.3 but now when I try to build/run my project, it returns the following JSON SDK error:
ld: warning: ignoring file /var/folders/OV/OVQ5LuaPFY4lW0L0a9jdRk+++TI/-Caches-/com.apple.Xcode.501/CompositeSDKs/iphoneos-iPhoneOS4.3-dqtvoenrseczxwakgamuhnlmhcbu/usr/local/lib/libjson.a, file was built for archive which is not the architecture being linked (armv7)
Undefined symbols for architecture armv7:
"_OBJC_CLASS_$_SBJSON", referenced from:
objc-class-ref in Neighbourhoods.o
objc-class-ref in StreetLevel.o
...
ld: symbol(s) not found for architecture armv7
collect2: ld returned 1 exit status
After upgrading to Xcode 4, it now seems to be trying to build for release whereas in the old versions I believe it was building for debug, but I can't seem to see where I can change that.
I've got the JSON SDK installed under ~/Library/SDKs/
The SDK has been added to the Additional SDKs section for both release and debug. I've also made sure that the following 'Other Linker Flags' are also added to both release and debug: "-all_load -ObjC -ljson".
After checking/adding all that, it still won't build.
Anyone able to shed any light on this problem?
I'm not sure why in the end it stopped working after the update, but I have now removed the SDK and just added the source code to the project, not ideal but it works.
I had the same error when building a third-party library, when under 4.2.6 it didn't complain before. Open up the library project, go to the menu "Project --> Edit Project Settings --> Build Tab" and look under "Architecture".
Under the sub-items "Architectures" and "Valid Architectures" check that they contain a reference to "armv7". If not you will have to select/add it.
Do the same for your active target: menu "Project --> Edit Active Target --> Build".
After making the changes, build again, and you should not have linker errors.
I had working project that failed to link after I switch to SDK 4.3 after updating Xcode 4. I removed ARM7 from the target architecture, leaving only ARM6, and that fixed it. A shot in the dark but perhaps others can use this workaround too.