M1 Pro芯片Mac安装Ruby 2.6.5时__rvm_make -j10报错求助
在M1 Pro Mac上安装Ruby 2.6.5解决__rvm_make错误的方案
方案1:通过Rosetta 2以x86_64架构编译
M1系列芯片的arm64架构对Ruby 2.6.x的原生支持有限,通过Rosetta 2模拟x86环境可避开多数编译兼容性问题:
- 关闭当前终端窗口,找到「终端」应用,右键选择「显示简介」,勾选「使用Rosetta打开」
- 重新打开终端,执行安装命令:
rvm install 2.6.5 --with-openssl-dir=$(brew --prefix openssl@1.1)
方案2:指定编译参数适配M1环境
若无需切换架构,可尝试调整编译参数,跳过冲突扩展并适配arm64环境:
rvm install 2.6.5 \ --with-openssl-dir=$(brew --prefix openssl@1.1) \ --with-out-ext=fiddle,readline \ --disable-install-doc \ CFLAGS="-arch arm64 -Wno-error=implicit-function-declaration"
--with-openssl-dir:明确指定OpenSSL 1.1路径(Ruby 2.6.5对OpenSSL 3.x支持不佳)--with-out-ext:跳过fiddle、readline这类在arm64上易编译失败的扩展CFLAGS:添加arm64架构标识,忽略隐式函数声明的编译警告(规避新编译器严格性导致的失败)
方案3:查看详细编译日志定位精准问题
外层日志仅提示make失败,需查看具体编译错误日志才能针对性解决:
执行命令查看日志内容:
cat /Users/sammalik/.rvm/log/1668327329_ruby-2.6.5/make.log
日志会显示具体失败环节(如扩展编译报错、依赖缺失),根据提示处理即可。
内容的提问来源于stack exchange,提问作者Aaquib Jawed
相关产品推荐
相关产品推荐

