ruby、gem、rbenv 命令未找到

标签 ruby ubuntu rbenv

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

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

与 bundle 或 gem 命令相同。

我可以看到我在/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 ..

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

最佳答案

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

完成的。

关于ruby、gem、rbenv 命令未找到,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50612319/

相关文章:

Android,为开发设置我的 Fairphone (FP1),(?????没有权限)

ruby - 安装多个版本时,只有一个版本的 Ruby 有效

ruby-on-rails - undefined method [] for nil :NilClass (NoMethodError) in ruby. .. 为什么?

ruby - 来自 `ObjectSpace._id2ref` 的错误

ruby-on-rails - 当我在 Rails/Rack 请求中调用 Thread.new 时,执行上下文会发生什么变化?

ubuntu - 在 Ubuntu 上安装 apache2

docker - 使用 docker 运行 hello-world 时如何修复 "ERRO[0005] error waiting for container: context canceled"

ruby-on-rails - 将 rbenv 与 Docker 结合使用

ruby - 如何让 rbenv 继续调试符号?

Ruby mechanize 未获取完整内容