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.

Build iOS failed: Undefined symbols for architecture arm64: "_GADURequestInterstitial"

See original GitHub issue
  • Unity version: 2020.3.1 - 2020.3.6
  • Google Mobile Ads Unity plugin version: 6.0.0
  • Platform: iOS
  • Platform OS version: n/a
  • Any specific devices issue occurs on: n/a
  • Mediation ad networks used, and their versions:n/a
  • Xcode: 12.2

Steps to reproduce:

=> Create empty Unity project => Copy sample HelloWorld to Assets folder => Update Admob appId => Use original iOS Resolver Settings (enable use_frameworks! + enable Always add the main target) => Build to Xcode => Build using Xcode

Changing iOS Resolver Settings gives same result:

  • Disable use_frameworks!
  • Disable Always add the main target)

Issue Analytics

  • State:closed
  • Created 2 years ago
  • Reactions:18
  • Comments:56 (3 by maintainers)

github_iconTop GitHub Comments

6reactions
JillSongcommented, May 26, 2021

@jungletree Thanks for explaining the problem.

We changed how we package the plugin for v6.0, and the issue lies in the dll build, not in the source code. So please import our source code instead of the unity package for now. We will release the fix soon.

6reactions
lucianochengcommented, May 24, 2021

I was able to get around this by commenting out line 7897 in Classes\Native\GoogleMobileAds.iOS.cpp in XCode:

reinterpret_cast<PInvokeFunc>(GADURequestInterstitial)(___interstitial0, ___request1);

This looks like the casting / native invocation of the GADURequestInterstitial function. Without this invocation, the compiler shouldn’t look for it.

Note that this code looks auto-generated, so it may not appear consistently on line 7897.

Also note that I don’t use interstitials in my code, so I’m not sure if this disables interstitials entirely or not. It may be more correct to implement the function as indicated by @jungletree above.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Undefined symbols for architecture arm64
Simple Solution Go to Target ->Linking -> other linker Flag and add $(inherited) in other linker flag in both Debug and Release. ·...
Read more >
Google mobile ads in unity (iOS) shows error
I take the build in Xcode during linking. It shows the following errors: Undefined symbols for architecture arm64: "_GADURequestInterstitial", ...
Read more >
Undefined symbols for architecture arm64 in Xcode 14
I am facing an issue when building a project that builds without issue in Xcode 13.4.1, but hits a build error in Xcode...
Read more >
Xcode Build fails - Undefined symbols for architecture arm64
Hey, I am really hoping someone can help me here, I have a unity project that runs in editor no issues, When I...
Read more >
Unity + iOS Build Error in Xcode (Undef symbols for ...
When I create a build for iOS using Unity 2020.1.9f, I am seeing the following build error in ... Undefined symbols for architecture...
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