Ошибка компоновщика интеграции AWS Mobile Hub Mach-O

Недавно я пытался интегрировать свое приложение с мобильным центром AWS. Я строго следовал инструкциям AWS, но всегда получал много Mach-O ошибок компоновщика, таких как "_OBJC_CLASS_$_FBSDKLoginManager, referenced from:, "_OBJC_CLASS_$_AWSLambdaInvoker", referenced from: и Linker command failed with exit code 1 (use -v to see invocation). Чтобы исправить это, я попытался загрузить эти упомянутые фреймворки отдельно и включить в свой проект, но от последней ошибки Linker command failed with exit code 1 (use -v to see invocation) просто не избавиться.


person CodeBrew    schedule 12.04.2017    source источник


Ответы (1)


Наконец я обнаружил, что проблема была вызвана конфликтом между моей существующей установкой Cocoapods и фреймворками AWS. Или, более конкретно, из-за флага -ObjC, помещенного в флаги компоновщика. Я решил проблему, выполнив следующие действия:

  1. Пока я использую Cocoapods только для фреймворков одного поставщика, поэтому я удалил Cocoapods, следуя инструкциям, приведенным на странице https://stackoverflow.com/a/16427883/1724059 и самостоятельно установил фреймворки, включенные в Cocoapods.
  2. Удалено "-ObjC -framework" во флагах компоновщика.

Второй шаг выше очень важен. Возможно, можно продолжить использование Cocoapods, но установить флаги компоновщика по-разному, и сборка тоже будет успешной.

person CodeBrew    schedule 12.04.2017