Ошибки компоновщика с ParseUI iOS и CocoaPods

Я пытался создать приложение, используя Parse, и хотел попробовать ParseUI. Я импортировал основной SDK Parse с использованием какао-бобов, и он работал нормально. Когда я решил добавить ParseUI, я столкнулся с проблемами.

Undefined symbols for architecture i386:
  "_OBJC_CLASS_$_BFTaskCompletionSource", referenced from:
      objc-class-ref in PFImageView.o
  "_OBJC_CLASS_$_PFProduct", referenced from:
      objc-class-ref in PFProductTableViewController.o
     (maybe you meant: _OBJC_CLASS_$_PFProductTableViewController)
  "_OBJC_CLASS_$_PFPurchase", referenced from:
      objc-class-ref in PFProductTableViewController.o
     (maybe you meant: _OBJC_CLASS_$_PFPurchaseTableViewCell)
  "_OBJC_CLASS_$_PFQuery", referenced from:
      objc-class-ref in PFQueryTableViewController.o
     (maybe you meant: _OBJC_CLASS_$_PFQueryTableViewController)
  "_OBJC_CLASS_$_PFTwitterUtils", referenced from:
      objc-class-ref in PFLogInViewController.o
  "_OBJC_CLASS_$_PFUser", referenced from:
      objc-class-ref in PFLogInViewController.o
      objc-class-ref in PFSignUpViewController.o
  "_PFParseErrorDomain", referenced from:
      -[PFImageView loadInBackground:] in PFImageView.o
      ___32-[PFImageView loadInBackground:]_block_invoke30 in PFImageView.o
      -[PFSignUpViewController _signUpAction] in PFSignUpViewController.o
      -[PFSignUpViewController _signUpDidFailWithError:] in PFSignUpViewController.o
      -[PFImageView loadInBackground:] in PFImageView.o
      ___32-[PFImageView loadInBackground:]_block_invoke30 in PFImageView.o
      -[PFSignUpViewController _signUpAction] in PFSignUpViewController.o
      -[PFSignUpViewController _signUpDidFailWithError:] in PFSignUpViewController.o
  "_kPFErrorCacheMiss", referenced from:
      ___48-[PFQueryTableViewController loadObjects:clear:]_block_invoke in PFQueryTableViewController.o
  "_kPFErrorInvalidEmailAddress", referenced from:
      -[PFSignUpViewController _signUpDidFailWithError:] in PFSignUpViewController.o
  "_kPFErrorInvalidImageData", referenced from:
      ___32-[PFImageView loadInBackground:]_block_invoke30 in PFImageView.o
  "_kPFErrorUnsavedFile", referenced from:
      -[PFImageView loadInBackground:] in PFImageView.o
  "_kPFErrorUserEmailMissing", referenced from:
      -[PFSignUpViewController _signUpDidFailWithError:] in PFSignUpViewController.o
  "_kPFErrorUserEmailTaken", referenced from:
      -[PFSignUpViewController _signUpDidFailWithError:] in PFSignUpViewController.o
  "_kPFErrorUserPasswordMissing", referenced from:
      -[PFSignUpViewController _signUpDidFailWithError:] in PFSignUpViewController.o
  "_kPFErrorUsernameMissing", referenced from:
      -[PFSignUpViewController _signUpDidFailWithError:] in PFSignUpViewController.o
  "_kPFErrorUsernameTaken", referenced from:
      -[PFSignUpViewController _signUpDidFailWithError:] in PFSignUpViewController.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)

Я пытался что-то вроде принудительного включения Parse.framework для связывания ParseUI, но, похоже, это не помогло. Я не эксперт по Cocoapods или XCode, поэтому я не знаю, есть ли что-то очевидное, что я пропускаю.

Я пробовал кокоаподы 0,35 и 0,36-бета-1. Это быстрый проект, поэтому я не знаю, может ли это быть причиной некоторых проблем.

1 ответ

Вам нужно использовать фреймворк Bolts.frameworks. Эта структура является частью Parse SDK. Другое дело, что с последней версией Parse SDK (прямо сейчас v1.6.2) вам придется импортировать Parse/Parse.h, ParseUI/ParseUI.h или оба, в зависимости от того, какие объекты вы используете. Скажите, если вам нужна дополнительная информация об установке фреймворка de Bolts!:)

Другие вопросы по тегам