I searched a lot and I realized, -ObjC
flag that GoogleMapSDK
requires, doesn't play well with ParseSDK
and FacebookSDK
. So I read on all the stackoverflow answers and tried solving my problem. The problem isn't fixed yet.
Steps I performed:
Solution 1: To make Parse work with -ObjC
import the FacebookSDK. Done
Problem 2: Parse and Fb SDK both use Bolts.framework
and the linker gives duplicate symbol
errors(some 92 of them)
Solution 2: Delete Bolts.framework as FacebookSDK already is pre-bundled with it.
Problem 3: After removing the Bolts.framework , duplicate errors go away but there is this one tiny linker error that I can't figure out. I'm assuming they've changed something in the new SDK version. The error is as follows:
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) ld: symbol(s) not found for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation)
The same problem was asked in the comments of [this answer on SO][1] without any reply or a constructive answer.
P.S. One thing I noticed that FacebookSDK comes bundled with Bolts version 1.1.3
and Parse has a version 1.1.4
in its zip file. Is this causing the problem??
P.P.S. I'm using the latest verions of SDK as of today's date(19th March, 2015)
They are: - Parse SDK: 1.6.4 - GoogleMaps SDK: 1.9.2
So Bolts Framework 1.1.3 works with Parse 1.6.3. But Parse 1.6.3 was not found anywhere. So I did a lot of digging around and went into the json files of cocoa pods and got the direct link to download Parse 1.6.3
or any version of any framework for that matter. github.com/CocoaPods/Specs of cocoa pods is the repository to look into.
For everyone else, who specifically are looking for Parse 1.6.3. This is the link Just find the source
link in the json and copy it in your browser.
I am closing this question with the finale conclusion:
Parse 1.6.3 and FacebookSDK 3.93 depend on Bolts 1.1.3
Parse 1.6.4 is updated with Bolts 1.1.4 but as of this date facebook sdk isnt. Hence we have to work with Parse 1.6.3 till facebook sdk is updated with bolts 1.1.4