22

When I tried to use the Parse Starter Project (I downloaded it and installed it as per the instructions, but I don't have a developer's license yet, so no push notifications), I got six errors, all about referencing twitter Mach-O Link errors. Here they are:

Undefined symbols for architecture i386:

"_ACAccountTypeIdentifierTwitter", referenced from:
  -[PF_Twitter getLocalTwitterAccountAsync] in Parse(PF_Twitter.o)
"_OBJC_CLASS_$_ACAccountStore", referenced from:
  objc-class-ref in Parse(PF_Twitter.o)
"_OBJC_CLASS_$_SLComposeViewController", referenced from:
  objc-class-ref in Parse(PF_Twitter.o)
"_OBJC_CLASS_$_SLRequest", referenced from:
  objc-class-ref in Parse(PF_Twitter.o)
"_SLServiceTypeTwitter", referenced from:
  -[PF_Twitter getAccessTokenForReverseAuthAsync:localTwitterAccount:] in Parse(PF_Twitter.o)
  -[PF_Twitter getLocalTwitterAccountAsync] in Parse(PF_Twitter.o) 
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Howli
  • 12,291
  • 19
  • 47
  • 72
WE Corps
  • 521
  • 5
  • 8
  • Are you trying to access twitter without installing the twitter SDK? Parse has twitter helpers, but they are still dependent on the twitter SDK. – Logan Apr 23 '14 at 19:26
  • Nope I didn't install anything except the base Parse SDK, then in the Parse tutorials there was a section on user interface, and then on log in screens. I followed the step(s) posted there. – WE Corps Apr 23 '14 at 20:26
  • Are you trying to use twitter login? – Logan Apr 23 '14 at 20:29
  • Nope, I just want to use the default log in, username password and create an account (with the forgot password if possible). Nothing fancy, – WE Corps Apr 23 '14 at 20:35
  • Not sure what's going on. You're missing the architecture for the i386 architecture which is the simulator. Can you replicate this on a device? Have you checked that you're on the latest version of parse? – Logan Apr 23 '14 at 20:37
  • Would it be better if we were to uninstall the Parse, and do a complete reinstall from the latest version? (We used the version on the parse website available today) Sorry I'm new to all of this. – WE Corps Apr 23 '14 at 20:40
  • No problem, everybody's got to start somewhere. It's difficult to diagnose problems sometimes without seeing the whole project. – Logan Apr 23 '14 at 20:43
  • I have another problem with another i386 Architecture in another file, could you help? – WE Corps Apr 23 '14 at 20:47
  • I'm not really sure what's going on with your project, or why this isn't working. I'd need to know a lot more details and even then, I'm not really sure. Can you try starting over and seeing if you get the same errors. – Logan Apr 23 '14 at 20:49
  • this is just that I made a new project, it's saying 2 duplicate symbols for architecture i386, and I can't find any duplicates.... – WE Corps Apr 23 '14 at 20:53
  • Check the source folder in finder. – Logan Apr 23 '14 at 20:56
  • addWorkIMG.png AppDelegate.h AppDelegate.m Base.lproj browseBGimg.png Default.png en.lproj GenericKeychain_Prefix.pch Graphic Design Demonstration-Info.plist Graphic Design Demonstration-Prefix.pch homeBGImg.png homeIconFinal1.png iamge2.png iamge3.png Images.xcassets Info.plist Localizable.strings logInViewController.h logInViewController.m main.m MainWindow.xib puppyIcon.png signInController.h signInController.m slideInMenuController.h slideInMenuController.m ViewController.h ViewController.m Nothing is the same... – WE Corps Apr 23 '14 at 20:59
  • I can't tell what's going on from that, it could be a number of things. Try cleaning everything, closing everything completely, restarting your computer, and firing up a fresh project. – Logan Apr 23 '14 at 21:03
  • I found the source folder for architecture i386, by copying the path specified by the error message in Xcode. There were several .o files which apparently were conflicting, however whenever I deleted one, and ran the program, it would replace it. What do I do? Also I've cleaned it and closed everything and restarted my computer. Thanks – WE Corps Apr 23 '14 at 21:06

5 Answers5

52

I had this same issue. The login related classes for parse require you to add two additional frameworks beyond what is listed in their quick start documentation:

Social.framework
Accounts.framework

These frameworks are part of iOS. Simply go to the projects Build Phases->Link Binary with Libraries and add them. I hope you find this helpful.

KryptonianSon
  • 551
  • 3
  • 6
  • 3
    i wish they would update their documentation. another issue i've experienced recently is if you use cocoapods, you'll have some undefined symbols for the facebook SDK unless you manually pull in facebook. these two issues have made the parse starter project more difficult than necessary. – mitrenegade Aug 21 '14 at 04:02
6

They didn't mention in the Quick start this two.

Social.framework
Accounts.framework

This library has been included in the parse.zip, with Bolts we clean the last 4 errors.

Bolts.framework
user3258046
  • 106
  • 1
  • 2
5

I was receiving the exact same error while attempting to complile the Parse Starter project. So I followed the advice in this post: https://stackoverflow.com/a/7847881/3960969, and everything seemed to work.

Basically, all I had to do was remove the reference to and re-install these frameworks:

Social.framework
Accounts.framework

After that, the project compiled without any errors or warnings.

Community
  • 1
  • 1
radiovisual
  • 6,298
  • 1
  • 26
  • 41
1

I had same problem. You add the Social.framework then it should solve it.

0

STTwitter documentation says you must include following frameworks to your project.

  1. Accounts.framework
  2. Social.framework
  3. Twitter.framework (iOS only)
  4. Security.framework (OS X only)
Hxb
  • 79
  • 9