ld: 134 дубликата символов для архитектуры arm64 на iOSDevice64 при добавлении стороннего фреймворка (AdMob) - PullRequest
0 голосов
/ 04 октября 2018

Я загрузил Google Mobile Ads SDK для iOS и распаковал его в каталог фреймворков iOS 11 SDK.Затем я сгенерировал для него заголовки паскалей, используя SDK Transform Assistant.Я добавил заголовки в пустой проект и добавил параметры компоновщика -ObjC -lz -lsqlite3, чтобы исправить ошибки «Неопределенный символ».Мне также пришлось скопировать несколько других фреймворков с помощью SDK Manager (зависимости от GoogleMobileAds).

Проект работает нормально на iOSDevice32, но при сборке для iOSDevice64 не удается установить соединение с ошибкой

[DCC Error] E2597 duplicate symbol l002 in:
      C:\Users\Christopher Hahn\Documents\Embarcadero\Studio\SDKs\iPhoneOS11.0.sdk/System/Library/Frameworks/GoogleMobileAds.framework/GoogleMobileAds(GADGestureRecognizer.o)
        C:\Users\Christopher Hahn\Documents\Embarcadero\Studio\SDKs\iPhoneOS11.0.sdk/System/Library/Frameworks/GoogleMobileAds.framework/GoogleMobileAds(GADNVideoPlayer.o)
  duplicate symbol l002 in:
      C:\Users\Christopher Hahn\Documents\Embarcadero\Studio\SDKs\iPhoneOS11.0.sdk/System/Library/Frameworks/GoogleMobileAds.framework/GoogleMobileAds(GADGestureRecognizer.o)
        C:\Users\Christopher Hahn\Documents\Embarcadero\Studio\SDKs\iPhoneOS11.0.sdk/System/Library/Frameworks/GoogleMobileAds.framework/GoogleMobileAds(GADNGLSphericalShader.o)
  duplicate symbol l004 in:
      C:\Users\Christopher Hahn\Documents\Embarcadero\Studio\SDKs\iPhoneOS11.0.sdk/System/Library/Frameworks/GoogleMobileAds.framework/GoogleMobileAds(GADLocation.o)
        C:\Users\Christopher Hahn\Documents\Embarcadero\Studio\SDKs\iPhoneOS11.0.sdk/System/Library/Frameworks/GoogleMobileAds.framework/GoogleMobileAds(GADNGLSphericalShader.o)
  duplicate symbol l005 in:
      C:\Users\Christopher Hahn\Documents\Embarcadero\Studio\SDKs\iPhoneOS11.0.sdk/System/Library/Frameworks/GoogleMobileAds.framework/GoogleMobileAds(GADLocation.o)
        C:\Users\Christopher Hahn\Documents\Embarcadero\Studio\SDKs\iPhoneOS11.0.sdk/System/Library/Frameworks/GoogleMobileAds.framework/GoogleMobileAds(GADNGLSphericalShader.o)

и т.д.

Как я могу это исправить?Я использую Delphi 10.2.3 и XCode 9 на OSX 10.13.6 (хотя я также пробовал это делать с XCode 9.2 и 9.4.1 и соответствующими версиями iOS)

1 Ответ

0 голосов
/ 04 октября 2018

Это означает, что у вас есть несколько классов с одним и тем же именем.Это может произойти, когда вы используете две библиотеки с одним и тем же источником.

...