web-dev-qa-db-ja.com

Ruby動作していませんか?

RVM Webサイトに記載されている単一の指示(gitを使用)を使用してRVMをインストールしました。

次に、Rubyバージョン1.9.2および1.8.7をインストールしました:

rvm install 1.9.2
rvm install 1.8.7

ただし、Rubyバイナリが見つかりません。コマンドを実行しようとすると、次のエラーが表示されます。

[root@server1 support]# rvm use 1.9.2
Using /usr/local/rvm/gems/Ruby-1.9.2-p136

[root@server1 support]# Ruby
-bash: Ruby: command not found

rvm infoの出力は次のとおりです。

[root@server1 support]# rvm info

system:

  system:
    uname:       "Linux server1.myserver.com 2.6.18-194.26.1.el5.028stab070.14 #1 SMP Thu Nov 18 16:34:01 MSK 2010 x86_64 x86_64 x86_64 GNU/Linux"
    bash:        "/bin/bash => GNU bash, version 3.2.25(1)-release (x86_64-redhat-linux-gnu)"
    zsh:         " => not installed"

  rvm:
    version:      "rvm 1.2.6 by Wayne E. Seguin ([email protected]) [http://rvm.beginrescueend.com/]"

  homes:
    gem:          "not set"
    Ruby:         "not set"

  binaries:
    Ruby:         ""
    irb:          ""
    gem:          ""
    rake:         ""

  environment:
    PATH:         "/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/usr/local/rvm/bin"
    GEM_HOME:     ""
    GEM_PATH:     ""
    MY_Ruby_HOME: ""
    IRBRC:        ""
    RUBYOPT:      ""
    gemset:       ""


[root@server1 support]#
34
Yash Desai

RVMでは、~/.bashrcまたは~/.bash_profileログイン時に初期化する。 Post Install セクションのインストールドキュメントで指定されています。あなたはそれをやりました?


あなたのrvm info出力、インストールが完了していないようです。出力のすべてのエントリには、対応する値が必要です。だから、私はあなたが追加していないと思う:

[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm"  # This loads RVM into a Shell session.

あなたの~/.bashrcまたは~/.bash_profileその後、新しいセッションを開始しました。

「マルチユーザー」インストールを実行している場合は、さらに多くの操作を行う必要があります。変更したか/etc/profile、または、Bashをシェルとして使用している場合は、/etc/bash.bashrc 含める:

#RVMがインストールされている場合はロードします。
#最初にユーザーインストールをロードしようとしますif [-s "$ HOME/.rvm/scripts/rvm"];その後
。 "$ HOME/.rvm/scripts/rvm" 
 Elif [-s "/ usr/local/rvm/scripts/rvm"];その後
。 「/usr/local/rvm/scripts/rvm」
fi

新しいシェルを開始しましたか?

個人的には、シングルユーザーのインストールほどマルチユーザーのインストールは好きではありません。お勧めしませんが、走行距離は異なる場合があります。


参考までに:RVMメンテナーとのIRC昨年の議論で、彼らはシステム全体のインストールを推奨せず、代わりにローカルの「シングルユーザー」インストールを推奨すると言った。サーバーでも。

62
the Tin Man

インストールしたRuby on Rails Ubuntu 11.10 VMで、「 HOW TO INSTALL Ruby on = Rails IN UBUNTU 11.1 "。

それをインストールした後、私は同じ問題に直面していました。私の意見では、チュートリアルから欠落していると思われる唯一のものは、次のコマンドです。

rvm --default use 1.9.2

Rubyは適切にインストールされていますが、RVMは各セッションで再定義するようですRubyを使用します。問題はデフォルトのRuby「システムRuby」を指しており、私の場合、これはどこにも指さず、rvm info最初の投稿と同様の結果を返します。

この問題を解決するには、次のいずれかのコマンドを使用する必要があります。

rvm  --default use 1.9.x

または(現在のセッションでのみ有効)

rvm use 1.9.x

サーバーを起動する前に、「 ExecJSおよびJavaScriptランタイムが見つかりませんでした 」に遭遇しました。いくつかの回答で提案されたように、Gemfileに次の行を追加して解決しました。

gem 'execjs'

gem 'therubyracer'

bundle installその後。

13
Micael Queiroz

私はそれを解決するために(Ubuntu 13.10を使用して)同様の問題がありました

$ source .rvm/scripts/rvm 

そして長期的に

$ echo "source ~/.rvm/scripts/rvm" >> ~/.bashrc

$ Ruby -v


The program 'Ruby' can be found in the following packages:
 * Ruby1.8
 * Ruby1.9.1
Try: Sudo apt-get install <selected package>

$ source .rvm/scripts/rvm

$ Ruby -v

Ruby 2.1.0p0 (2013-12-25 revision 44422) [x86_64-linux]
12
Fredy

同じ問題に出くわしました。私はちょうどコマンドを実行しました:

/bin/bash --login
5
Bruno Paulino

RVM内で検出されないルビーを修正する方法を次に示します。

最初に、正真正銘のチェックを行って、非常に見栄えが良いことを確認してから、実行しました

rvm use Ruby --default

仕事をしました。次のコマンドになります。

-SVE1411EGXB:~/code$ cd app1/
  -SVE1411EGXB:~/code/app1$ Rails s
The program 'Rails' can be found in the following packages:
 * Ruby-railties-3.2
 * Ruby-railties-4.0
Try: Sudo apt-get install <selected package>
  -SVE1411EGXB:~/code/app1$ Rails s
The program 'Rails' can be found in the following packages:
 * Ruby-railties-3.2
 * Ruby-railties-4.0
Try: Sudo apt-get install <selected package>
  -SVE1411EGXB:~/code/app1$ which Ruby
  -SVE1411EGXB:~/code/app1$ which gem
  -SVE1411EGXB:~/code/app1$ rvm list

rvm rubies

=* Ruby-2.1.2 [ x86_64 ]

# => - current
# =* - current && default
#  * - default

  -SVE1411EGXB:~/code/app1$ \curl -sSL https://get.rvm.io | bash -s stable
Downloading https://github.com/wayneeseguin/rvm/archive/stable.tar.gz

Upgrading the RVM installation in /home  /.rvm/
    RVM PATH line found in /home  /.profile /home  /.bashrc /home  /.zshrc.
    RVM sourcing line found in /home  /.bashrc /home  /.bash_profile /home  /.zlogin.
Upgrade of RVM in /home  /.rvm/ is complete.

# nullsoulexception,
#
#   Thank you for using RVM!
#   We sincerely hope that RVM helps to make your life easier and more enjoyable!!!
#
# ~Wayne, Michal & team.

In case of problems: http://rvm.io/help and https://Twitter.com/rvm_io

Upgrade Notes:

  * No new notes to display.

  -SVE1411EGXB:~/code/app1$ Rails s
The program 'Rails' can be found in the following packages:
 * Ruby-railties-3.2
 * Ruby-railties-4.0
Try: Sudo apt-get install <selected package>
  -SVE1411EGXB:~/code/app1$ source ~/.rvm/scripts/rvm
  -SVE1411EGXB:~/code/app1$ rvm requirements
Checking requirements for ubuntu.
Requirements installation successful.
  -SVE1411EGXB:~/code/app1$ rvm get stable
Downloading https://get.rvm.io
Downloading https://github.com/wayneeseguin/rvm/archive/stable.tar.gz

Upgrading the RVM installation in /home  /.rvm/
    RVM PATH line found in /home  /.profile /home  /.bashrc /home  /.zshrc.
    RVM sourcing line found in /home  /.bashrc /home  /.bash_profile /home  /.zlogin.
Upgrade of RVM in /home  /.rvm/ is complete.

# nullsoulexception,
#
#   Thank you for using RVM!
#   We sincerely hope that RVM helps to make your life easier and more enjoyable!!!
#
# ~Wayne, Michal & team.

In case of problems: http://rvm.io/help and https://Twitter.com/rvm_io

Upgrade Notes:

  * No new notes to display.

RVM reloaded!
  -SVE1411EGXB:~/code/app1$ rvm reload
RVM reloaded!
  -SVE1411EGXB:~/code/app1$ rvm list known
# MRI Rubies
[Ruby-]1.8.6[-p420]
[Ruby-]1.8.7[-head] # security released on head
[Ruby-]1.9.1[-p431]
[Ruby-]1.9.2[-head] # security released on head
[Ruby-]1.9.3[-p547]
[Ruby-]2.0.0-p451
[Ruby-]2.0.0[-p481]
[Ruby-]2.1.1
[Ruby-]2.1[.2]
[Ruby-]2.1-head
Ruby-head

# GoRuby
goruby

# Topaz
topaz

# TheCodeShop - MRI experimental patches
tcs

# jamesgolick - All around gangster
jamesgolick

# Minimalistic Ruby implementation - ISO 30170:2012
mruby[-head]

# JRuby
jruby-1.6.8
jruby[-1.7.12]
jruby-head

# Rubinius
rbx-2.0.0
rbx-2.1.1
rbx[-2.2.7]
rbx-head

# Ruby Enterprise Edition
ree-1.8.6
ree[-1.8.7][-2012.02]

# Kiji
kiji

# MagLev
maglev[-head]
maglev-1.0.0

# Mac OS X Snow Leopard Or Newer
macruby-0.10
macruby-0.11
macruby[-0.12]
macruby-nightly
macruby-head

# Opal
opal

# IronRuby
ironruby[-1.1.3]
ironruby-head

  -SVE1411EGXB:~/code/app1$ Ruby -v
The program 'Ruby' can be found in the following packages:
 * Ruby
 * Ruby1.8
Try: Sudo apt-get install <selected package>
  -SVE1411EGXB:~/code/app1$ rvm use Ruby --default
Using /home  /.rvm/gems/Ruby-2.1.2
  -SVE1411EGXB:~/code/app1$ Ruby -v
Ruby 2.1.2p95 (2014-05-08 revision 45877) [x86_64-linux]
  -SVE1411EGXB:~/code/app1$ Rails s
=> Booting WEBrick
=> Rails 4.1.1 application starting in development on http://0.0.0.0:3000
=> Run `Rails server -h` for more startup options
=> Notice: server is listening on all interfaces (0.0.0.0). Consider using 127.0.0.1 (--binding option)
4
zee

/ usr/local/lib/rvmのソースを作成していますか? echo 'source /usr/local/lib/rvm' >> ~/.bashrcおよびSSH経由で再ログ/ Bashの新しいインスタンスを開始します。


明確にするために、多少の混乱があるため、RVMをインストールする方法は2つあります。「ユーザー単位」インストールと「システム全体」インストールです。

ほとんどの日常使用では、RVMを~/.rvmにインストールする「ユーザーごと」インストールを使用します。システム全体のインストールは、1組のルビーを使用する必要があるサーバーに適しています。この場合のRVMのデフォルトの場所は/usr/local/rvmです。

質問に基づいて、RVMをシステム全体のインストールとしてインストールしたようです。

RVMを使用するには、ログインするたびにスクリプトを実行して初期化する必要があります。これを簡単に行うには、~/.bashrcファイル(またはOS Xの場合は~/.bash_profile)にファイルを含めます。 、ログインするたびに自動的に実行されるようにします。ユーザーごとのインストールの場合は、ファイルに次のテキストを追加します。

[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm"

システム全体のインストールでは、代わりに次のテキストを使用します。

[[ -s "/usr/local/lib/rvm" ]] && . "/usr/local/lib/rvm"

実際にシステム全体のインストールを行う場合は、rvmグループのメンバーであることも確認する必要があります。これを行うには、次を入力します。

Sudo adduser `whoami` rvm

必要な変更を行ったら、セッションからログアウトしてからログインし直します。そうしたら、rvm use 1.9.2rvm infoと入力して確認できる環境変数のセットを設定する必要があります。すべてうまくいけば、Rubyは正しく実行されるはずです。

4
Michelle Tilley

Rubyはあなたの道にありません。簡単に言えば、RVMはパス内のRubyの切り替えを処理します。コマンドラインツールの出力を見てください

printenv

次のようなものが表示されるはずです。

PATH=/Users/myuser/.rvm/gems/jruby-1.5.6/bin

ティンマンの応答を参照してください。

2
Jared Knipp

シェルをログインシェルとして設定します(ターミナルを開く> [編集]> [プロファイル設定]> [コマンド]タブ> [ログインシェルとしてコマンドを実行])。

RVM + Rubyのインストールが完了したら、使用するRubyを指定する必要があります。

rvm use --latest --default

0
James L.

source行が.bash_profileに正しく含まれていることに気付きましたが、Rubyコマンドが見つかりませんでした。したがって、rvm list、なしRubyが選択された:

rvm list

rvm rubies

   Ruby-2.4.0 [ x86_64 ]

# Default Ruby not set. Try 'rvm alias create default <Ruby>'.

# => - current
# =* - current && default
#  * - default

それからrvm use 2.4.0そして再度チェック

rvm list

rvm rubies

=> Ruby-2.4.0 [ x86_64 ]

# Default Ruby not set. Try 'rvm alias create default <Ruby>'.

# => - current
# =* - current && default
#  * - default

インストールされたRubyとコメントされた字幕を閉じる矢印を見てください。その後Ruby -v最終的に私に答えた

Ruby 2.4.0p0 (2016-12-24 revision 57164) [x86_64-linux]

これが役立つことを願っています。乾杯。

編集:使用できますrvm --default use 2.4.0デフォルトとして設定するRuby version

0
Shad