移除StartApp SDK添加GoogleAd SDK后出现arm64架构符号未定义错误
解决Undefined symbols for architecture arm64(GSDK_GTMLog相关)的方法
以下是针对该编译错误的可行解决方案,按优先级尝试:
更新Firebase Crashlytics依赖
旧版Firebase Crash(现命名为Crashlytics)依赖的GTM库版本,可能和Google AdMob SDK引入的版本冲突,或是缺失对应模块。将Podfile中的Firebase/Crashlytics更新到当前稳定版,执行命令:pod update Firebase/Crashlytics显式引入GTM日志模块
在Podfile中添加缺失的GTM库依赖,直接补全编译所需符号:pod 'GoogleToolboxForMac/Logger'执行
pod install完成安装后重新编译。清理项目缓存与依赖
- 关闭Xcode,删除项目目录下的
Pods文件夹、Podfile.lock和.xcworkspace文件 - 执行命令彻底清理并重装依赖:
pod deintegrate && pod install - 打开Xcode后按
Cmd+Shift+K清理构建缓存,再重新编译项目
- 关闭Xcode,删除项目目录下的
统一架构配置
检查项目Build Settings:- 将
Architectures设置为Standard Architectures (arm64, x86_64) Build Active Architecture Only在Debug模式设为Yes,Release模式设为No
确保所有Pod的架构配置和项目保持一致,避免部分库仅编译x86_64导致arm64符号缺失
- 将
清理StartApp残留文件
移除StartApp SDK时可能有残留文件引发冲突:- 检查项目的
Linked Frameworks and Libraries,移除StartApp相关框架 - 查看
Build Phases的Compile Sources和Link Binary With Libraries,删除残留的StartApp文件 - 检查
Info.plist,移除StartApp相关配置项
- 检查项目的
内容的提问来源于stack exchange,提问作者Parveen Banu
相关产品推荐
相关产品推荐

