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

从Intel更换为M2芯片后,执行Rails命令出现dyld缺失符号报错

解决M2芯片迁移后Rails命令报错的方案

核心原因

Time Machine迁移的Ruby及Rails相关gems是基于Intel架构编译的,与M2的arm64架构不兼容,导致动态链接时出现符号缺失错误。

解决步骤

1. 重新编译适配arm64的Ruby版本

通过rbenv重新安装当前使用的Ruby版本,生成适配M2架构的二进制文件:

# 替换为你实际使用的Ruby版本,比如3.2.2
rbenv uninstall 3.2.2
rbenv install 3.2.2
rbenv global 3.2.2
rbenv rehash

2. 重置项目依赖gems

进入项目目录,清理旧的架构不兼容gems,重新安装适配版本:

rm Gemfile.lock
rm -rf vendor/bundle
bundle install

3. 验证修复效果

执行以下命令确认Rails功能恢复:

rails --version
rails db:create

额外排查点

  • 确认终端架构:执行arch命令,输出应为arm64,若为i386需关闭终端的Rosetta选项(右键终端-显示简介-取消勾选"使用Rosetta打开")。
  • 补全Xcode组件:执行xcode-select --install更新命令行工具,再运行sudo xcodebuild -license accept完成协议配置。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.27 00:24:55