0

I am building and running my Xcode app but I get a build failed message on account of the following error message:

Undefined symbols for architecture x86_64:
  "_OBJC_CLASS_$_SFAccountManager", referenced from:
      objc-class-ref in AppDelegate.o
  "_OBJC_CLASS_$_SFApplication", referenced from:
      objc-class-ref in main.o
  "_OBJC_CLASS_$_SFAuthenticationManager", referenced from:
      objc-class-ref in AppDelegate.o
  "_OBJC_CLASS_$_SFLogger", referenced from:
      objc-class-ref in AppDelegate.o
  "_OBJC_CLASS_$_SFRestAPI", referenced from:
      objc-class-ref in OrderVC.o
      objc-class-ref in PerformanceVC.o
      objc-class-ref in CustomerDetailsVC.o
      objc-class-ref in AppDelegate.o
  "_kSFLoginHostChangedNotification", referenced from:
      -[AppDelegate init] in AppDelegate.o
      -[AppDelegate dealloc] in AppDelegate.o
  "_kSFUserLogoutNotification", referenced from:
      -[AppDelegate init] in AppDelegate.o
      -[AppDelegate dealloc] 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)

How do I resolve this/these issue(s)?

1

Well, as the error message says, you're trying to reference a symbol that is unknown for your current architecture (x86_64).

Are you sure that the SDK includes an x86_64 slice for the simulator? Have you cleaned recently and/or nuked your project's derived data? Are you running with ONLY_ACTIVE_ARCH enabled or disabled?

  • the only change made recently was updating to Xcode 5.1 from Xcode 5.0. – Bart Mar 23 '14 at 21:42
  • 1
    You should review your project's settings. Xcode 5.1 changes a number of defaults, including ARCHS_STANDARD. – Jonathan Hersh Mar 24 '14 at 2:33
  • FWIW, looks like there are known issues with the mobile SDK, arm64, and Xcode 5.1. – Jonathan Hersh Mar 25 '14 at 23:42
-1

The answer to the question is supplied by @z00b on Stackoverflow. "I would set Architectures in your project to *$(ARCHS_STANDARD_32_BIT)*, which will do the right thing for both iOS builds and OS X / simulator builds.

*The problem is that your library is not built for x86_64, but your project is trying to build for both i386 and x86_64, so the link step fails. Apple changed the default architecture in Xcode 5.1 to include 64-bit architectures*."

  • I would love to know why one would down vote a correct answer!!! – Bart Mar 28 '14 at 8:49
  • well funny that... It was exactly the answer that enabled me to solve the problem Jonathan, so I must assert that this is proven to be the answer. I had spent many worrying hours looking through the other answer with no success and no offence to your answer above, it does not provide this answer for me (although in your comment subsequently you do mention ARCHS_STANDARD but I have to also say it was not explicitly clear what setting to use and where to use it. For that reason, I assigned myself the answer. – Bart Mar 28 '14 at 15:39
  • here is the link to the orignial answer supplied by @z00b : stackoverflow.com/questions/22593334/… – Bart Mar 28 '14 at 15:43

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.