Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Xcode 7 - Error trying to integrate Parse using CocoaPods (Swift)

I'm using Xcode 7 beta, and I have been trying to integrate Parse iOS SDK using Cocoapods.

I already created the bridging-header.h, I alreade imported Parse #import <Parse/Parse.h>. I already called Parse in my AppDelegate.swift.

The error happends when I try to use any class/object related to Parse. Actually, I'm just calling Parse with: Parse.setApplicationId(ParseAPI.AppID, clientKey: ParseAPI.ClientKey)

I'm getting the following error:

Undefined symbols for architecture x86_64:
  "_OBJC_CLASS_$_Parse", referenced from:
      type metadata accessor for ObjectiveC.Parse 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)

I have cleaned the project many times even a complete clean build.

like image 899
eMdOS Avatar asked Jul 09 '15 19:07

eMdOS


1 Answers

Using Xcode 7 beta 4, I first migrated away from using the Objective C bridging header by removing all references to it in my XCode project.

Next, I updated my Podfile with a new line at the top:

use_frameworks!

Then I ran

pod outdated

Which told me newer versions of Parse and ParseCrashReporting were available (from 1.7.5 to 1.7.5.3).

I then ran

pod update

Opening my project in Xcode, the last step was to add import statements in files in which I was using Parse objects, so many files now included either

import Parse

or

import ParseCrashReporting

For more on use_frameworks, see http://www.innerexception.com/2015/05/cocoapods-useframeworks-means-bridging.html

like image 180
Jack Avatar answered Oct 10 '22 21:10

Jack