安装Ruby 2.7.7失败后重置RVM,现遇‘command 'rvm' not found’错误
Ruby 2.7.7安装失败及RVM命令丢失问题解决
问题概述
安装Ruby 2.7.7时触发error while running make install. Installation halted错误,尝试多种修复方案无效后执行rvm implode重置RVM,现在出现command 'rvm' not found, but there are 19 similar ones提示。
已尝试操作
- 通过RVM安装openssl后重装Ruby版本
- 安装gpg2并导入RVM官方密钥
- 使用
CFLAGS="-Wno-error=implicit-function-declaration" rvm install 2.7.7编译安装 - 多次重装RVM(包括官方脚本、PPA源两种方式)
- 向
~/.bashrc、~/.bash_profile、~/.profile添加RVM环境变量
相关日志输出
执行grep -rn rvm ~/.bash*的结果:
/home/ladygund/.bash_history:259:rvm which ruby /home/ladygund/.bash_history:260:rvm rubies /home/ladygund/.bash_history:280:rvm list rubies /home/ladygund/.bash_history:281:rvm install 2.7.7 /home/ladygund/.bash_history:282:rvm list rubies /home/ladygund/.bash_history:283:/usr/share/rvm/log/1677601373_ruby-2.7.7/install.log /home/ladygund/.bash_history:284:nano /usr/share/rvm/log/1677601373_ruby-2.7.7/install.log /home/ladygund/.bash_history:285:rvm --ruby-version use 2.7.7 /home/ladygund/.bash_history:286:rvm --ruby-version use 2.7.7 --create /home/ladygund/.bash_history:287:nano /usr/share/rvm/log/1677601373_ruby-2.7.7/install.log /home/ladygund/.bash_history:289:rvm install 2.7.0 --with-openssl-dir=path/to/openssl@1.1 /home/ladygund/.bash_history:290:nano /usr/share/rvm/log/1677602005_ruby-2.7.0/make.log /home/ladygund/.bash_history:296:rvm info rvm /home/ladygund/.bash_history:297:rvm list rubies /home/ladygund/.bash_history:298:rvm use default /home/ladygund/.bash_history:299:rvm list rubies /home/ladygund/.bash_history:302:rvm list rubies /home/ladygund/.bash_history:303:type cd | head -1 ; type rvm | head -1 /home/ladygund/.bash_history:307:rvm pkg install openssl /home/ladygund/.bash_history:308:rvm reinstall all --force /home/ladygund/.bash_history:309:rvm list rubies /home/ladygund/.bash_history:310:rvm remove 2.7.7 /home/ladygund/.bash_history:311:rvm install "ruby-3.2.0" /home/ladygund/.bash_history:312:rvm list rubies /home/ladygund/.bash_history:313:rvm install "ruby-2.7.7" /home/ladygund/.bash_history:314:rvm install make /home/ladygund/.bash_history:315:rvm get master /home/ladygund/.bash_history:317:rvm install gpg /home/ladygund/.bash_history:320:command curl -sSL https://rvm.io/mpapis.asc | gpg --import - /home/ladygund/.bash_history:321:rvm get master /home/ladygund/.bash_history:322:command curl -sSL https://rvm.io/pkuczynski.asc | gpg2 --import - /home/ladygund/.bash_history:324:command curl -sSL https://rvm.io/pkuczynski.asc | gpg2 --import - /home/ladygund/.bash_history:325:rvm get master /home/ladygund/.bash_history:326:rvm remove 2.7.7 /home/ladygund/.bash_history:327:CFLAGS="-Wno-error=implicit-function-declaration" rvm install 2.7.7 /home/ladygund/.bash_history:333:rvm list rubies /home/ladygund/.bash_history:334:rvm --ruby-version use 2.7.7 /home/ladygund/.bash_history:335:rvm --ruby-version use 2.7.7 --create /home/ladygund/.bash_history:342:rvm implode /home/ladygund/.bash_history:374:ls rvm /home/ladygund/.bash_history:375:rm rvm /home/ladygund/.bash_history:376:sudo rm -rf rvm /home/ladygund/.bash_history:380:tree usr/share/rvm /home/ladygund/.bash_history:383:if sudo grep -q secure_path /etc/sudoers; then sudo sh -c "echo export rvmsudo_secure_path=1 >> /etc/profile.d/rvm_secure_path.sh" && echo Environment variable installed; fi /home/ladygund/.bash_history:384:sudo usermod -a -G rvm `whoami` /home/ladygund/.bash_history:388:rvm install ruby ##I believe this was where I got the first 'rvm' not found message## /home/ladygund/.bash_history:390:curl -sSL https://get.rvm.io | sudo bash -s stable /home/ladygund/.bash_history:391:command curl -sSL https://rvm.io/pkuczynski.asc | sudo gpg2 --import - /home/ladygund/.bash_history:392:rvm install ruby /home/ladygund/.bash_history:397:rvm list /home/ladygund/.bash_history:399:sudo apt-add-repository -y ppa:rael-gc/rvm /home/ladygund/.bash_history:401:sudo apt-get install rvm /home/ladygund/.bash_history:402:sudo usermod -a -G rvm $USER /home/ladygund/.bash_history:403:rvm list /home/ladygund/.bash_history:404:echo 'source "/etc/profile.d/rvm.sh"' >> ~/.bashrc /home/ladygund/.bash_history:405:rvm list /home/ladygund/.bash_history:407:sudo apt-add-repository -y ppa:rael-gc/rvm /home/ladygund/.bash_history:409:sudo apt-get install rvm /home/ladygund/.bash_history:411:sudo usermod -a -G rvm $USER /home/ladygund/.bash_history:412:rvm list /home/ladygund/.bash_history:413:echo "source $HOME/.rvm/scripts/rvm" >> ~/.bash_profile /home/ladygund/.bash_history:415:rvm list /home/ladygund/.bash_history:416:echo "source $HOME/.rvm/scripts/rvm" >> ~/.profile /home/ladygund/.bash_history:417:rvm list /home/ladygund/.bash_history:420:echo "source $HOME/.rvm/scripts/rvm" >> ~/.bashrc /home/ladygund/.bash_history:428:rvm install ruby /home/ladygund/.bash_history:436:rvm install ruby /home/ladygund/.bash_history:441:rvm list /home/ladygund/.bash_history:447:ls /usr/share/rvm /home/ladygund/.bash_history:449:ls /usr/share/rvm/src/ /home/ladygund/.bash_history:451:rvm install ruby /home/ladygund/.bash_history:470:rvm list rubies /home/ladygund/.bash_history:485:ls rvm /home/ladygund/.bash_history:486:ls rvm -la /home/ladygund/.bash_history:490:grep -rn rvm ~/.bash* /home/ladygund/.bash_history:491:rvm get master /home/ladygund/.bash_history:493:nano /etc/profile.d/rvm.sh /home/ladygund/.bash_history:494:sudo nano /etc/profile.d/rvm.sh /home/ladygund/.bash_history:495:rvm get master /home/ladygund/.bash_history:496:sudo nano /etc/profile.d/rvm.sh /home/ladygund/.bash_history:498:rvm list rubies /home/ladygund/.bash_history:499:rvm /home/ladygund/.bash_history:500:rvm
解决步骤
1. 彻底清理RVM残留
- 终止所有RVM相关进程:
pkill -f rvm - 删除系统级RVM文件:
sudo rm -rf /usr/share/rvm /etc/profile.d/rvm.sh /etc/rvmrc /usr/local/rvm - 删除用户级RVM文件:
rm -rf ~/.rvm ~/.rvmrc - 清理bash配置中的RVM引用:
编辑~/.bashrc、~/.bash_profile、~/.profile,删除所有包含source ... rvm的行,然后执行:source ~/.bashrc
2. 重新安装RVM
- 安装基础依赖:
sudo apt-get update && sudo apt-get install curl gpg2 build-essential libssl-dev libreadline-dev zlib1g-dev -y - 导入RVM官方密钥:
gpg2 --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB - 安装稳定版RVM:
curl -sSL https://get.rvm.io | bash -s stable - 加载RVM环境:
source ~/.rvm/scripts/rvm - 验证RVM安装:
rvm --version
3. 安装Ruby 2.7.7
- 检查并安装Ruby编译依赖:
rvm requirements - 安装Ruby 2.7.7(适配openssl版本):
先确保安装openssl@1.1:
再执行安装命令:sudo apt-get install libssl1.1 -yrvm install 2.7.7 --with-openssl-dir=/usr/lib/ssl - 设置为默认Ruby版本:
rvm use 2.7.7 --default - 验证安装:
ruby -v
内容的提问来源于stack exchange,提问作者Sherece Bledsoe
相关产品推荐
相关产品推荐

