Xcode 15归档App时因AdMob未定义符号引发链接错误求助
Xcode 15归档Unity项目时AdMob未定义符号链接错误问题
在将游戏上传至App Store的最后阶段,使用Xcode 15归档项目时,构建因链接错误及AdMob未定义符号问题失败。推测unity-plugin-library存在异常,Xcode无法找到与Google AdMob Ads插件关联的文件,具体错误信息如下:
Unity Framework存在2个问题:
未定义符号:
链接器命令执行失败,退出代码为1(使用-v查看调用详情)
ld: Undefined symbols: _CGSizeFromGADAdSize, referenced from: +[GADUPluginUtil safeAdSizeForAdSize:] in unity-plugin-library.a[arm64] [14] (GADUPluginUtil.o) _GADAdSizeEqualToSize, referenced from: +[GADUPluginUtil safeAdSizeForAdSize:] in unity-plugin-library.a [arm64] [14] (GADUPluginUtil.o) GADAdSizeFromCGSize, referenced from: __GAMUBannerViewSetValidAdSizes in unity-plugin-library.a [arm64][11] (GADUInterface.o) +[GADUPluginUtil safeAdSizeForAdSize:] in unity-plugin-library.a [arm64] [14] (GADUPluginUtil.o) +[GADUPluginUtil adSizeForWidth: height:] in unity-plugin-library.a [arm64] [14] (GADUPluginUtil.o) GADAdSizeFullWidthPortraitWithHeight, referenced from: +[GADUPluginUtil adSizeForWidth: height:] in unity-plugin-library.a[arm64] [14] (GADUPluginUtil.o) _GADCurrentOrientationAnchoredAdaptiveBannerAdSizeWithWidth, referenced from: +[GADUPluginUtil adaptiveAdSizeForWidth: orientation:] in unity-plugin-library.a [arm64] [14] (GADUPluginUtil.o) GADErrorUserInfoKeyResponseInfo, referenced from: GADUGetAdErrorResponse Info in unity-plugin-library.a[arm64] [11] (GADUInterface.o) GADLandscapeAnchoredAdaptiveBannerAdSizeWithWidth, referenced from: +[GADUPluginUtil adaptiveAdSizeForWidth: orientation:] in unity-plugin-library.a[arm64] [14] (GADUPluginUtil.o) GADPortraitAnchoredAdaptiveBannerAdSizeWithWidth, referenced from: +[GADUPluginUtil adaptiveAdSizeForWidth:orientation:] in unity-plugin-library.a[arm64] [14] (GADUPluginUtil.o) _NSValueFromGADAdSize, referenced from: _GAMUBannerViewSetValidAdSizes in unity-plugin-library.a[arm64][11] (GADUInterface.o) _OBJC_CLASS_$_GADAppOpenAd, referenced from: in unity-plugin-library.a[arm64] [9] (GADUAppOpenAd.o) _OBJC_CLASS_$_GADBannerView, referenced from: in unity-plugin-library.a[arm64] [10] (GADUBanner.o) _OBJC_CLASS_$_GADExtras, referenced from: in unity-plugin-library.a[arm64] [15] (GADURequest.o) _OBJC_CLASS_$_GADInterstitialAd, referenced from: in unity-plugin-library.a[arm64] [12] (GADUInterstitial.o)
clang: error: linker command failed with exit code 1 (use -v to see invocation)
已尝试的解决操作
- 在Xcode的Build Phases中“Compile Sources”添加库或框架
- 在“Link binary with Libraries”添加框架
- 为文件属性添加
$inherited - 重启Mac和Xcode
- 将Google AdMob Unity插件从8.4.0升级至最新版8.5.2,但问题依旧
配置信息
- Unity: 2021.3.31f1
- AdMob: 8.5.2
- Xcode: 15
- MacOS: MacOS 14 最新版
- BaseSDK: IOS
- Architecture: Arm64
- Ruby: 3.2.2
- CocoaPods: 1.13.0
内容的提问来源于stack exchange,提问作者ProgrammerForAlife
相关产品推荐
相关产品推荐

