ld: символ (ы) не найден для архитектуры arm64 TwiterKit - PullRequest
2 голосов
/ 02 июня 2019

Почему-то твиттер в моем проекте.Я не добавил это, но я думаю, что это часть другого модуля, который я добавил.Проблема в том, что он дает мне 43 ошибки.

Начинается:

    Undefined symbols for architecture arm64:
  "_TWTRCoreOAuthSigningOAuthEchoHeaders", referenced from:
      -[TWTROAuthSigning OAuthEchoHeadersForRequestMethod:URLString:parameters:error:] in TwitterKit(TWTROAuthSigning.o)
  "_OBJC_CLASS_$_TWTRScribeService", referenced from:
      objc-class-ref in TwitterKit(Twitter.o)
  "_TWTRTwitterAuthenticatePath", referenced from:
      -[TWTRWebAuthenticationViewController initWithAuthenticationToken:authConfig:APIServiceConfig:forceLogin:] in TwitterKit(TWTRWebAuthenticationViewController.o)

...

    ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

Как это исправить?

Мои стручки:

    pod 'Firebase'
pod 'Firebase/Firestore'
pod 'Firebase/Storage'
pod 'Firebase/Core'
pod 'Firebase/Auth'
pod 'Firebase/Database'
pod 'FirebaseUI'
pod 'SDWebImage'
pod 'Mapbox-iOS-SDK', '~> 4.9'
pod 'Firebase/Analytics'
pod 'Firebase/Messaging'
pod 'Nuke', '~> 7.0'

До добавления Nuke проблем не было.

Обновление:

    pod 'SDWebImage' Seems to be the pod causing the issue: after remoiving it the errors were gone

Что мне делать?

Обновление 2:

После переустановки SDWebImage ошибки по-прежнему исчезают.Я не знаю, что вызвало ошибки.

1 Ответ

2 голосов
/ 02 июня 2019

Похоже, проблемы с самими Cocoapods, а не с конкретным модулем.Это происходит.

  • Закрыть Xcode
  • Выполнить pod install в терминале
  • Очистить проект с помощью Build -> Очистить пункт меню
  • Создать проект заново
  • Если проблема сохраняется, обновите cocoapods и повторите предыдущий процесс
...