question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

iOS Build Failure with Google Mobile Ads SDK 9.14.0 - duplicate symbols for architecture arm64

See original GitHub issue

[REQUIRED] Step 1: Describe your environment

  • Unity version: 2021.3.9f1
  • Google Mobile Ads Unity plugin version: 7.3.1
  • Platform: Unity Editor
  • Platform OS version: -
  • Any specific devices issue occurs on: -
  • Mediation ad networks used, and their versions: none

Additional information:

  • Xcode version: Xcode 14.1 (Build version 14B47b)
  • CocoaPods version: 1.11.3
  • External Dependency Manager for Unity version: 1.2.175
  • Firebase version: 10.1.0

[REQUIRED] Step 2: Describe the problem

Starting today (december 9), our iOS builds suddenly started to fail due to the release of the Google Mobile Ads SDK 9.14.0 for iOS.

Steps to reproduce:

Try to build an iOS app with Google Mobile Ads (Unity) 7.3.1. Observe that during CocoaPods dependency resolution, it pulls the Google Mobile Ads (iOS) SDK version 9.14.0. The following error is thrown in XCode:

▸ Linking UnityFramework
❌  duplicate symbol '_OBJC_IVAR_$_GADPAIDIdentifier._identifier' in
> GoogleMobileAds(GADPAIDIdentifier.o)
> unity-plugin-library.a(GADPAIDIdentifier.o)
❌  duplicate symbol '_OBJC_CLASS_$_GADPAIDIdentifier' in
> GoogleMobileAds(GADPAIDIdentifier.o)
> unity-plugin-library.a(GADPAIDIdentifier.o)
❌  duplicate symbol '_OBJC_METACLASS_$_GADPAIDIdentifier' in
> GoogleMobileAds(GADPAIDIdentifier.o)
> unity-plugin-library.a(GADPAIDIdentifier.o)
❌  duplicate symbol '_OBJC_IVAR_$_GADPAIDIdentifier._timestamp' in
> GoogleMobileAds(GADPAIDIdentifier.o)
> unity-plugin-library.a(GADPAIDIdentifier.o)
❌  duplicate symbol '_OBJC_IVAR_$_GADPAIDManager._userDefaults' in
> GoogleMobileAds(GADPAIDManager.o)
> unity-plugin-library.a(GADPAIDManager.o)
❌  duplicate symbol '_OBJC_CLASS_$_GADPAIDManager' in
> GoogleMobileAds(GADPAIDManager.o)
> unity-plugin-library.a(GADPAIDManager.o)
❌  duplicate symbol '_OBJC_METACLASS_$_GADPAIDManager' in
> GoogleMobileAds(GADPAIDManager.o)
> unity-plugin-library.a(GADPAIDManager.o)
❌  duplicate symbol '_OBJC_IVAR_$_GADPAIDManager._storageAllowed' in
> GoogleMobileAds(GADPAIDManager.o)
> unity-plugin-library.a(GADPAIDManager.o)
❌  duplicate symbol '_OBJC_IVAR_$_GADPAIDManager._PAIDV2' in
> GoogleMobileAds(GADPAIDManager.o)
> unity-plugin-library.a(GADPAIDManager.o)
❌  duplicate symbol '_OBJC_IVAR_$_GADPAIDManager._PAIDV1' in
> GoogleMobileAds(GADPAIDManager.o)
> unity-plugin-library.a(GADPAIDManager.o)
❌  ld: 10 duplicate symbols for architecture arm64
❌  clang: error: linker command failed with exit code 1 (use -v to see invocation)

Workaround:

Since my latest working build used the Google Mobile Ads (iOS) SDK version 9.13.0, I’ve decided to freeze that version in the GoogleMobileAdsDependencies.xml file:

  <iosPods>
-    <iosPod name="Google-Mobile-Ads-SDK" version="~> 9.11">
+    <iosPod name="Google-Mobile-Ads-SDK" version="9.13">
      <sources>
        <source>https://github.com/CocoaPods/Specs</source>
      </sources>
    </iosPod>
  </iosPods>

Freezing it to the version 9.13.x, fixed the iOS builds for me.

Issue Analytics

  • State:closed
  • Created 9 months ago
  • Reactions:19
  • Comments:13 (2 by maintainers)

github_iconTop GitHub Comments

3reactions
CreaProjectscommented, Dec 15, 2022

Thank you so much! It’s working with this fix 😃

2reactions
dcosmin-97commented, Dec 13, 2022

Thank you for the workaround! It would be nice to add in the title duplicate symbols for architecture arm64

Read more comments on GitHub >

github_iconTop Results From Across the Web

UnityAdmobPlugin with iOS Build Failure ...
UnityAdmobPlugin with iOS Build Failure with Google Mobile Ads SDK 9.14.0 ... ld: 10 duplicate symbols for architecture arm64 ❌ clang: error: linker ......
Read more >
2 duplicate symbols for architecture arm64 AdMob
When I implement AdMob in Unity and Build in iOS, I get an error. I think it may have something to do with...
Read more >
Release Notes | iOS
Version, Release Date, Notes. 10.9.0, 2023‑08‑02. Ad inspector: Added SDK support for exporting ad responses. Note: The ad inspector interface is scheduled ...
Read more >
Question - 81 duplicate symbols for architecture arm64
Im making a game in Unity 2019, I export it to iOS, then open it with Xcode 11.6, I made all the signing...
Read more >
【iOS】10 duplicate symbols for architecture arm64のエラー ...
iOS Build Failure with Google Mobile Ads SDK 9.14.0 - duplicate symbols for architecture arm64 · Issue #2450 · googleads/googleads-mobile- ...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found