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

M1 Mac安装Cocoapods时Mapbox相关模块编译报错该如何解决

M1芯片Mac安装Mapbox相关CocoaPods依赖报错解决方案

问题背景

使用2020款M1芯片MacBook Pro(系统版本Big Sur 11.6)克隆GitHub现有仓库,安装CocoaPods依赖时先后出现多轮Mapbox相关编译报错,以下是对应的解决步骤:

阶段1:Xcode 13环境下报错

报错内容:

  1. No such module 'MapboxCommon_Private'
  2. Failed to build module 'MapboxSearch'; this SDK is not supported by the compiler (the SDK is built with 'Apple Swift version 5.4.2 (swiftlang-1205.0.28.2 clang-1205.0.19.57)', while this compiler is 'Apple Swift version 5.5 (swiftlang-1300.0.31.1 clang-1300.0.29.1)'). Please select a toolchain which matches the SDK.

该类报错的核心原因是你所使用的MapboxSearch 1.x beta版本最高仅支持Xcode 12.5.1对应的Swift 5.4.2版本,和Xcode 13的Swift 5.5版本不兼容,降级Xcode到12.5.1的操作是正确的前置步骤。

阶段2:Xcode 12.5.1环境下报错

报错内容:
Failed to build module 'MapboxSearch' from its module interface; it may have been damaged or it may have triggered a bug in the Swift compiler when it was produced

该报错是由于Podfile配置冲突、Mapbox相关编译参数缺失导致,按以下步骤处理即可解决:

完整解决步骤

  • 第一步:清理本地缓存
    执行以下命令清除残留的旧版本Pod文件,避免缓存干扰:
    rm -rf ~/Library/Caches/CocoaPods
    rm -rf Pods
    rm -rf Podfile.lock
    pod deintegrate
    
  • 第二步:修正Podfile配置
    你调整后的Podfile中ARCHS[sdk=iphonesimulator*] = \uname -m`和EXCLUDED_ARCHS[sdk=iphonesimulator*] = arm64`存在配置冲突,M1芯片+Xcode12.5.1环境下仅需保留排除arm64的配置即可,同时添加Mapbox专属编译参数,修正后的post_install段如下:
    post_install do |pi|
      pi.pods_project.targets.each do |t|
        t.build_configurations.each do |config|
          config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '13.0'
          # 删除原有ARCHS配置,仅保留模拟器排除arm64配置
          config.build_settings["EXCLUDED_ARCHS[sdk=iphonesimulator*]"] = "arm64"
          # 新增Mapbox专属编译参数,解决模块接口编译报错
          if t.name.include? "Mapbox"
            config.build_settings['BUILD_LIBRARY_FOR_DISTRIBUTION'] = 'NO'
            config.build_settings['SKIP_INSTALL'] = 'NO'
          end
        end
      end
    end
    
    Mapbox相关依赖版本无需调整,保留Mapbox-iOS-SDK ~> 6.4.0、MapboxSearch >= 1.0.0-beta.6, < 2.0即可。
  • 第三步:重新安装依赖
    右键点击终端→显示简介→勾选「使用Rosetta打开」,重启终端后执行:
    pod install
    
  • 第四步:Xcode配置校验
    打开生成的.xcworkspace文件,进入项目主配置的Build Settings页,确认两项配置:
    • Excluded Architectures下,Debug、Release模式的iOS Simulator选项都已添加arm64
    • Build Active Architecture Only下,Debug模式设为Yes,Release模式设为No
      完成以上操作后重新编译项目即可解决全部报错。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 03:54:04