通过rbenv安装Ruby 2.5.7时卡在checking if fork works with pthread...
解决rbenv安装Ruby 2.5.7卡在
checking if fork works with pthread...的问题 针对Mac M2(ARM架构)上Orbstack中的Ubuntu 22.04环境,Ruby 2.5.7的老旧代码在ARM平台的pthread-fork兼容性检测环节存在阻塞问题,可以通过以下方法解决:
方法1:跳过pthread-fork兼容性检测
这是最直接的解决方案,通过设置环境变量让Ruby编译过程跳过该检测步骤:
- 在终端执行以下命令设置环境变量:
export RUBY_CONFIGURE_OPTS="--disable-pthread-fork-check" - 重新执行安装命令:
rbenv install 2.5.7 -v
方法2:确保编译依赖完整
如果跳过检测后仍有问题,先确认是否安装了所有必要的编译依赖:
- 执行以下命令安装完整依赖:
sudo apt update && sudo apt install git curl libssl-dev libreadline-dev zlib1g-dev autoconf bison build-essential libyaml-dev libncurses5-dev libffi-dev libgdbm-dev libpthread-stubs0-dev - 再重新执行方法1中的安装命令。
方法3:更新ruby-build到最新版本
老旧的ruby-build可能对ARM平台支持不足,更新到最新版本可能修复兼容性问题:
- 如果ruby-build是通过git安装的(rbenv默认方式),进入其安装目录更新:
cd ~/.rbenv/plugins/ruby-build && git pull - 之后再次尝试安装Ruby 2.5.7。
内容的提问来源于stack exchange,提问作者thomaskwan_sl
相关产品推荐
相关产品推荐

