苹果M1芯片Mac执行rvm install 2.6.7命令始终安装失败如何解决?
M1芯片Mac安装Ruby 2.6.7报错解决方案
核心原因
Ruby 2.6.x版本未原生适配Apple Silicon架构,默认在ARM架构环境下编译源码会触发隐式函数声明类的编译错误,最终导致__rvm_make -j8执行失败。
可用解决方案
方案一:使用Rosetta 2转译环境安装(稳定性最高)
- 打开访达,进入「应用程序」→「实用工具」目录
- 右键点击「终端」,选择「显示简介」,勾选「使用Rosetta打开」选项
- 完全退出终端后重新打开,执行以下命令完成安装:
- 先清理之前的失败安装缓存:
rvm remove 2.6.7 - 直接执行安装命令:
rvm install 2.6.7
- 先清理之前的失败安装缓存:
- 安装完成后可取消终端的Rosetta勾选,后续在原生ARM环境也可正常使用已安装的Ruby 2.6.7版本
方案二:原生ARM终端指定编译参数安装
无需切换Rosetta环境,直接在原生终端执行以下命令即可:
- 先安装依赖的openssl版本:
brew install openssl@1.1 - 清理旧的安装缓存:
rvm remove 2.6.7 - 带编译参数执行安装:
rvm install 2.6.7 \ --with-openssl-dir=`brew --prefix openssl@1.1` \ --with-cflags="-Wno-error=implicit-function-declaration" \ --arch x86_64
验证安装
安装完成后执行rvm use 2.6.7 --default,再执行ruby -v确认版本输出为2.6.7即安装成功。
内容的提问来源于stack exchange,提问作者Sunil Targe
相关产品推荐
相关产品推荐

