You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Xcode14编译报错:Undefined symbol: _OBJC_CLASS_$_ADBMobile

解决Xcode14构建AdobeMobileSDK时Undefined symbol: _OBJC_CLASS_$_ADBMobile错误

以下是针对该问题的具体排查和解决步骤:

  • 升级AdobeMobileSDK到适配Xcode14的版本
    Xcode14对构建系统、符号链接逻辑做了调整,旧版本的AdobeMobileSDK可能未适配这些变化。如果使用CocoaPods管理依赖,修改Podfile中的SDK版本为最新稳定版,执行pod update AdobeMobileSDK;如果是手动导入.framework文件,替换为支持Xcode14的SDK版本。

  • 调整架构相关构建设置

    1. 打开项目的Build Settings,找到Architectures选项,确保设置为Standard Architectures (arm64, x86_64)(iOS项目),避免自定义架构导致不兼容。
    2. 检查Excluded Architectures,确认模拟器配置中没有误排除arm64(Xcode14默认可能添加了该排除项,需手动删除,保证SDK的架构能被正确链接)。
  • 验证SDK的链接配置

    1. 若手动导入SDK,进入Build Phases > Link Binary With Libraries,确认AdobeMobileSDK的.framework已添加,且状态为Required。
    2. 如果SDK是静态库形式,在Build Settings > Other Linker Flags中添加-ObjC或-all_load,确保链接器能正确识别SDK中的Objective-C类符号。
  • 清理构建缓存

    • 执行Product > Clean Build Folder(快捷键Cmd+Shift+K)清除本地构建缓存。
    • 手动删除DerivedData目录:通过Xcode的Preferences > Locations找到DerivedData路径,删除整个文件夹后重新构建项目。
  • 检查代码中的导入和引用

    • 确保Objective-C代码中使用正确的头文件导入路径:#import <AdobeMobileSDK/ADBMobile.h>。
    • 混编项目中,确认Swift代码能通过桥接文件正确访问ADBMobile类,桥接文件中需包含#import <AdobeMobileSDK/ADBMobile.h>。

内容的提问来源于stack exchange,提问作者Jagadeeshwar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 12:43:30