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

Mac M2 Pro设备iOS应用编译失败:Undefined symbols问题求助

解决M2 Pro Mac上iOS应用框架链接Undefined symbols错误的思路

针对你遇到的问题,结合Silicon芯片与Intel芯片的架构差异,提供以下排查方向:

  • 检查框架的架构兼容性
    手动安装的框架可能仅支持Intel的x86_64架构,不兼容M系列的arm64。打开终端执行命令:
    lipo -info /path/to/your/framework.framework/[FrameworkName]
    若输出仅包含x86_64,说明框架无arm64版本,需更换支持arm64的框架包;若需临时调试,可在项目Build Settings中找到Excluded Architectures,为Debug目标添加arm64(注意:上架发布时需移除该设置,否则无法通过审核)。

  • 调整Build Active Architecture Only设置
    进入项目Build Settings,找到Build Active Architecture Only:

    • Debug模式下若设为YES,Xcode会仅编译当前Mac的arm64架构,若框架不支持则会报错。尝试将Debug模式的该选项改为NO,重新编译验证是否解决问题。
  • 清理Xcode缓存
    缓存残留可能导致链接逻辑异常:

    1. 执行终端命令:rm -rf ~/Library/Developer/Xcode/DerivedData
    2. 在Xcode中按Cmd+Shift+K清理Build Folder,之后重新编译项目。
  • 确认Embed Frameworks配置
    虽然已设置Embed & Sign,但手动添加的框架可能未加入Build Phases > Embed Frameworks列表。检查该列表,若目标框架不在其中,手动将其拖入并确保Embed模式为Embed & Sign。

  • 排查重复框架冲突
    检查项目中是否重复添加了同一框架的不同版本,或其他依赖库中已包含该框架的符号,导致链接时符号查找混乱。移除重复的框架引用,确保仅保留一个正确版本。

  • 更新Xcode至最新稳定版
    旧版Xcode对M系列芯片的框架链接支持可能存在bug,升级到最新稳定版Xcode后重新尝试编译。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.24 11:22:43