【问题标题】:ruby, gem, rbenv command not foundruby、gem、rbenv 命令未找到
【发布时间】:2018-05-30 19:43:13
【问题描述】:

我一整天都在 VM 中的 Lubuntu (18.04) 上设置了一些 ruby​​ 依赖项。 我安装了 ruby 2.4.0,然后安装了 rbenv 并将 2.4.0 设置为要使用的全局版本(可能是相反的顺序)。然后我安装了 bundler 并开始为我的 Sinatra 应用程序安装依赖项。由于我需要一些本机扩展,我还通过 sudo apt-get install 安装了 libpq-dev,安装了 pg gem 并再次运行 bundler。然后我有

Command 'ruby' not found, but can be installed with:
sudo apt install ruby

bundlegem 命令相同。

我可以看到我在 /home/michalvantuch/.rbenv/bin/rbenv 和 /home/michalvantuch/.rbenv/versions/2.4.0/ 中有 rbenv。

我的路径:

/home/michalvantuch/.rbenv/plugins/ruby-build/bin:/home/michalvantuch/.rbenv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games

我的 bash 历史:

bundle install
gem install pg -v '0.21.0' --source 'https://rubygems.org/'
vi /home/michalvantuch/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/extensions/x86_64-linux/2.4.0-static/pg-0.21.0/mkmf.log
sudo apt-get install libpq-dev
gem install pg -v '0.21.0' --source 'https://rubygems.org/'
bundle install
gem list --local
cd /home/michalvantuch/.rbenv/bin/
ls -lah
C rbenv -> ../libexec/rbenv
cd rbenv -> ../libexec/rbenv
cd rbenv
cd ../libexec/
ls -lah
pwd
cd ..

我很累,不知道如何解决这个问题。我是不是搞砸了系统权限?

【问题讨论】:

  • 排序正确吗? “我安装了 ruby​​”然后是“我安装了 rbenv”? rbenv 告诉你安装了哪些红宝石?
  • 我没有来自 rbenv 的输出,就像它什么都不做一样。你是对的,我可能安装了 rbenv 然后将 ruby​​ 设置为 2.4.0。我记得它正在设置,但没有安装。但是我希望其他命令根本不起作用。
  • 其他命令有效,因为您安装了 ruby​​。安装可以让你安装 rubies 的插件,然后使用它来安装 2.4.0,那么你应该很高兴。
  • 我不确定我是否得到了这部分?安装可让您安装 rubies 的插件,然后使用它来安装 2.4.0
  • rbenv 本身不会安装开箱即用的红宝石。一般需要安装github.com/rbenv/ruby-build#readme插件,会启用rbenv install命令。

标签: ruby ubuntu rbenv


【解决方案1】:

linux 机器中 rbenv 的完整设置命令 初始设置

git clone https://github.com/rbenv/rbenv.git ~/.rbenv
cd ~/.rbenv && src/configure && make -C src
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc 
~/.rbenv/bin/rbenv init

检查eval "$(rbenv init -)" 是否存在于~/.bashrc 中。如果不存在,请运行以下命令

echo 'eval "$(rbenv init -)"' >> ~/.bashrc

那么,

source ~/.bashrc
mkdir -p "$(rbenv root)"/plugins
git clone https://github.com/rbenv/ruby-build.git "$(rbenv root)"/plugins/ruby-build
source ~/.bashrc
rbenv rehash

现在,安装了 rbenv。现在安装您的 ruby​​ 版本(将下面的版本更改为您的版本)。并将其设置为全球版本。 (使用最新的稳定版本作为全局版本,这是一个很好的做法。您可以根据您的工作项目设置不同的本地版本)

rbenv install 2.5.1
rbenv global 2.5.1

完成。

【讨论】:

    【解决方案2】:

    原来是我自己想出来的。

    我所缺少的(rbenv 医生帮助了我)是在我的 PATH 中有垫片。添加

    eval "$(rbenv init -)"  
    

    成功了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-07-08
      • 1970-01-01
      • 2015-07-24
      • 2016-04-29
      • 1970-01-01
      • 2014-07-21
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多