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

macOS安装Ruby 2.4.10遇__rvm_make -j8错误求助

解决macOS下RVM安装Ruby 2.4.10时的ffi_prep_closure编译错误

错误根源

报错核心是closure.c:263:14: error: call to undeclared function 'ffi_prep_closure',这是因为新版macOS的Clang编译器默认启用C99严格模式,不允许隐式函数声明,而Ruby 2.4.10的fiddle扩展(依赖libffi)未适配该规则。


解决方法

方法1:通过编译参数跳过警告

安装时添加环境变量,让编译器忽略隐式函数声明的错误:

CFLAGS="-Wno-error=implicit-function-declaration" rvm install ruby-2.4.10

方法2:指定兼容版本的libffi

如果方法1无效,手动安装Ruby 2.4.x兼容的libffi版本:

  1. 用Homebrew安装旧版libffi:
brew install libffi@3.3
  1. 配置环境变量后再安装Ruby:
export PKG_CONFIG_PATH="/usr/local/opt/libffi@3.3/lib/pkgconfig"
CFLAGS="-Wno-error=implicit-function-declaration" rvm install ruby-2.4.10

方法3:降级Command Line Tools(极端情况)

如果你的macOS版本为Ventura/Sonoma等较新版本,新版Xcode Command Line Tools对老Ruby兼容性极差,可以降级到Xcode 12.x对应的Command Line Tools(需从Apple开发者官网下载),安装后再执行RVM安装命令。


注意事项

Ruby 2.4.x已处于终止维护状态,不再接收安全更新和bug修复,建议尽可能升级到受支持的Ruby版本(如2.7+或3.x分支),避免后续出现更多兼容性问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.12 17:05:06