Я занимаюсь разработкой приложения с использованием платформы Ionic 4 и в настоящее время пытаюсь собрать его для iOS и выпустить в App Store. Ошибка, которую я получаю, заключается в том, что при попытке запустить приложение в XCode, на этапе компоновки произойдет сбой со следующей ошибкой:
ld: 346 повторяющихся символов для архитектуры x86_64 clang: error: linker
Сбой команды с кодом выхода 1 (используйте -v для просмотра вызова).
Этому предшествует список повторяющихся символов, например:
повторяющийся символ _OBJC_IVAR _ $ _ FIRInstanceIDURLQueryItem._name в:
/Users/james/Library/Developer/Xcode/DerivedData/Jambox-ataoinheliizvyaczvbklhkqvhpf/Build/Products/Debug-iphonesimulator/FirebaseInstanceID/libFirebaseInstanceID.a(FIRInstanceIDURLQueryItem.o)
Jambox / Плагины / Cordova-плагин-firebase / FirebaseInstanceID.framework / FirebaseInstanceID (FIRInstanceIDURLQueryItem_ce817fff617a4255d51c2a25da32a1f0.o)
Они относятся к следующим рамкам:
Я пробовал несколько решений этой проблемы, но ни одно из них не привело к успеху:
1). Удаление -ObjC и $ (унаследованного) от других флагов компоновщика - это приводит к успешной компоновке и связыванию приложения, но при запуске происходит сбой с этой ошибкой:
*** Завершение работы приложения из-за необработанного исключения «NSInvalidArgumentException», причина: '+ [FIRApp
registerAsConfigurable:]: нераспознанный селектор отправлен в класс
0x1080bc178'
2). Удаление каждого фреймворка из списка дубликатов символов - это помогает уменьшить количество дубликатов символов. Я могу уменьшить его до 65 повторяющихся символов, пока мне не придется удалить GoogleUtilities.framework, что приводит к сбою сборки с этой ошибкой:
Неопределенные символы для архитектуры x86_64:
"_OBJC_CLASS _ $ _ GULObjectSwizzler", на который ссылаются:
objc-class-ref в FirebasePerformance (FPRObjectInstrumentor_f65d32035cadef24185912716f0b12f9.o)
objc-class-ref в FirebasePerformance (FPRNetworkTrace_3053ec2ab59f2fcfec4b18c29e4b4cec.o)
objc-class-ref в FirebasePerformance (FPRNSURLConnectionInstrument_5611d225f62417fa73742554b6a45401.o)
ld: символы не найдены для архитектуры x86_64 clang: error: linker
Сбой команды с кодом выхода 1 (используйте -v для просмотра вызова)
3). Удаление папки DerivedData - после этого я получаю те же ошибки.
4). Удаление и добавление платформы iOS - те же ошибки.