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

Mac M1安装Ruby 3.2.0时C编译器无法生成可执行文件求助

解决M1 Mac安装Ruby(适配Jekyll)的编译报错问题

核心问题定位

报错中的unsupported tapi file type '!tapi-tbd'和x86_64架构提示,说明是SDK文件不兼容或架构不匹配导致的链接器失败,以下是针对性解决步骤:

步骤1:更新CommandLineTools与SDK

  • 重新安装或更新CommandLineTools:
    xcode-select --install
    
    若提示已安装,先重置路径再重装:
    sudo xcode-select --reset
    xcode-select --install
    
  • 确认SDK路径并设置环境变量:
    export SDKROOT=$(xcrun --show-sdk-path)
    echo 'export SDKROOT=$(xcrun --show-sdk-path)' >> ~/.zshrc # 永久生效,zsh用户
    # bash用户替换为:echo 'export SDKROOT=$(xcrun --show-sdk-path)' >> ~/.bash_profile
    source ~/.zshrc # 刷新环境变量
    

步骤2:用arm64架构编译Ruby(适配M1)

如果使用rbenv,直接指定arm64架构安装:

arch -arm64 RUBY_CFLAGS="-Wno-error=implicit-function-declaration" rbenv install 3.2.0

若之前尝试过安装失败,先清理残留:

rbenv uninstall 3.2.0
rm -rf ~/.rbenv/sources/ruby-3.2.0

步骤3:改用Homebrew直接安装Ruby(更简单的备选方案)

因为你的需求只是搭建GitHub Pages,无需复杂版本管理,直接用M1适配的Homebrew安装Ruby:

  • 确认Homebrew是arm64版本(路径应为/opt/homebrew,若为/usr/local则是x86版本,需卸载后重装适配M1的arm64版本)
  • 安装Ruby:
    brew install ruby
    
  • 将Ruby加入系统路径:
    echo 'export PATH="/opt/homebrew/opt/ruby/bin:$PATH"' >> ~/.zshrc
    echo 'export PATH="$HOME/.gem/ruby/3.2.0/bin:$PATH"' >> ~/.zshrc
    source ~/.zshrc
    
  • 安装Jekyll与Bundler:
    gem install jekyll bundler
    

步骤4:确认终端架构(排除Rosetta干扰)

  • 检查当前终端架构:
    arch
    
    若输出i386,说明终端在Rosetta模式下,需:
    1. 关闭终端
    2. 右键终端图标 → 显示简介
    3. 取消勾选「使用Rosetta打开」,重新打开终端后再执行安装命令

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 00:16:12