When I update my project architecture to 64 bit these issues appear. My deployment target is 7.1.
Undefined symbols for architecture x86_64: "OBJC_CLASS$RKClient", referenced from: objc-class-ref in AppDelegate.o objc-class-ref in SSRSuggestion.o "_OBJC_CLASS$RKObjectManager", referenced from: objc-class-ref in CinemaDetails-3BD8C6BC69EF1F23.o objc-class-ref in AppDelegate.o objc-class-ref in HomeScreen.o objc-class-ref in MovieDetails.o objc-class-ref in CinemaFilter-46E8309ACAC69139.o objc-class-ref in FilterView.o "_OBJC_CLASS$RKObjectMapping", referenced from: objc-class-ref in Cinema.o objc-class-ref in Movie.o objc-class-ref in Filter.o objc-class-ref in AppInfoModel.o "_OBJC_CLASS$RKParserRegistry", referenced from: objc-class-ref in SSRSuggestion.o "_OBJC_CLASS$RKRequestQueue", referenced from: objc-class-ref in CinemaDetails-3BD8C6BC69EF1F23.o objc-class-ref in AppDelegate.o objc-class-ref in MovieDetails.o "_OBJC_CLASS$_RKRequestSerialization", referenced from: objc-class-ref in SSRSuggestion.o "_RKMIMETypeJSON", referenced from: -[SSRSuggestion send_btn_pressed:] in SSRSuggestion.o ld: symbol(s) not found for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation)
Seems you have an old version of
RestKit
. Easiest way probably is to use CocoaPods. Open terminal, type:Then go to your project folder in terminal and type:
Open
.podfile
and insert this line:Save and quit the file. In terminal write:
From this time you should use
.xcwrokspace
instead of.xcproj
. You should also remove old version ofRestKit
.Another option is to use git submodules or hg subrepos. I won't type tutorial how to do it here, as it's too much to write, cocoapods are easier for someone new.
Another option is to download and add to your project newer RestKit version "from hand" - drag & drop. I don't recommend this way, as you never know which version you're using and you can't see that there are new updates to used frameworks (what obviously often fixes bugs).