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

M1 Mac使用Shopify CLI构建扩展时racc安装失败,架构不匹配求助

解决M1 Mac上Shopify CLI构建扩展的架构适配问题

核心原因

你安装的Ruby是x86_64架构版本,与M1 Mac默认的arm64架构不匹配,导致链接阶段执行失败。

解决步骤

1. 确认并切换到arm64版Homebrew

M1 Mac的arm64版Homebrew默认路径为/opt/homebrew,若你的Homebrew路径是/usr/local,说明是x86版本,需重装:

# 卸载x86版Homebrew
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/uninstall.sh)"
# 安装arm64版Homebrew
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
# 配置环境变量(若未自动配置)
echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zshrc
source ~/.zshrc

2. 安装arm64架构的Ruby

用rbenv安装适配arm64的Ruby版本(以3.2.2为例):

# 安装arm64版rbenv和ruby-build
brew install rbenv ruby-build
# 设置环境变量强制arm64编译
export RUBY_CONFIGURE_OPTS="--with-openssl-dir=$(brew --prefix openssl) --enable-shared"
export CC="clang"
# 安装Ruby 3.2.2
rbenv install 3.2.2
# 设置全局Ruby版本
rbenv global 3.2.2
# 验证架构,输出应为 arm64-darwin2x.x 格式
ruby -e "puts RUBY_PLATFORM"

3. 重新安装Shopify CLI

gem uninstall shopify-cli
gem install shopify-cli
# 验证CLI运行环境
shopify version

4. 清理缓存后重新构建

进入应用扩展目录,清理旧依赖并重新构建:

rm Gemfile.lock
rm -rf vendor
bundle install
# 重新执行扩展构建命令
shopify extension push

5. 临时备选:用Rosetta 2运行

若以上步骤无效,可通过Rosetta 2兼容x86架构:

  • 找到终端应用(/Applications/Utilities/Terminal.app)
  • 右键选择「显示简介」,勾选「使用Rosetta打开」
  • 重启终端后重新执行构建命令

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.18 12:02:11