私は、Debianベースのオクシデンタルを実行しているRaspberry PiをプログラミングするときにRubyを使用するつもりです。SSH経由で、次のコマンドを実行しました。
curl -L https://get.rvm.io | bash -s stable --Ruby
Rubyソースをダウンロードしてコンパイルしました。完了するまでに約2時間かかります。AdaFruitのWebIDEを介してRubyを使用します- http ://learn.adafruit.com/webide/ 。ただし、Ruby SSHを介して実行したインストールでは、pi
に.rvm
というフォルダが作成されましたユーザーのディレクトリ。WebIDEはwebide
ユーザーアカウントを使用します。
webide
ユーザーアカウントにルビーへのアクセスを許可する最良の方法は何ですか? .rvm
フォルダを/home/pi
から/etc/share
に移動しようとしましたが、これは機能しませんでした。Rubyをターミナルで使用しようとすると、エラー「ERROR:Missing RVM environment file: '/home/pi/.rvm/environments/Ruby-2.0.0-p353'」なので、いくつかのリンクを切断している必要があります。
より良い方法があると確信しているので、私はwebideユーザーの別の2時間のインストールの実行を控えています!
Rubyのリポジトリバージョンを使用できますが、Rubyを管理するために別の方法でRVMを使用することをお勧めします。遅くなっているように見えるかもしれませんが、リポジトリ経由でデプロイされたRubyのバージョンは使用可能ですが、多くの場合、問題が発生する可能性があります。一般に、特定のアプリケーションやユースケース専用のインタープリターと必要なライブラリー(Gems)の専用バージョンを作成するのが最善です。
RVMは、マルチユーザーインストールを実行するだけでなく、シングルユーザー(これはユーザーが行った操作)をインストールする機能を提供します。
$ curl -L https://get.rvm.io | Sudo bash -s stable
この方法でインストールを実行すると、RVMが自動的にトリガーされ、/usr/local/rvm
にソフトウェアをインストールするマルチユーザーインストールが実行されます。ここから、Unixグループrvm
に属しているすべてのユーザーがソフトウェアにアクセスできます。
$ Sudo usermod -a -G rvm <user>
ここで、<user>
はユーザーwebide
です。
次に、各ユーザーの$HOME/.bashrc
に以下を追加します。私は通常これをファイルの最後に置きます:
[[ -s /usr/local/rvm/scripts/rvm ]] && source /usr/local/rvm/scripts/rvm
これで、ログアウトしてからログインし直すことができます。
注1:gnome-terminalで別のタブを開始するだけでは不十分で、新しくログインしたセッションである必要があります。これにより、このユーザーを追加したばかりのグループがピックアップされます。
注2:以下のファイルがすでにここにインストールされている場合は、これを$HOME/.bashrc
に追加する必要はないでしょう。システムのrvm
グループに属するすべてのユーザーに対して、上記に加えてさらに多くのことを行います。
$ ls -l /etc/profile.d/rvm.sh
-rwxr-xr-x 1 root root 1698 Nov 27 21:14 /etc/profile.d/rvm.sh
ログインしたら、Rubyをインストールする必要があります。ユーザーwebide
として、次の手順を使用してこれを行うことができます。
$ rvm list known | less
...
# MRI Rubies
[Ruby-]1.8.6[-p420]
[Ruby-]1.8.7[-p374]
[Ruby-]1.9.1[-p431]
[Ruby-]1.9.2[-p320]
[Ruby-]1.9.3[-p484]
[Ruby-]2.0.0-p195
[Ruby-]2.0.0[-p353]
[Ruby-]2.1.0-preview2
[Ruby-]2.1.0-head
Ruby-head
...
注:Rubyを初めてインストールするときは、依存関係をインストールできるように、Sudo
権限を持つユーザーを使用してこれを行う必要があります。たとえばUbuntuでは、このタイプのアクティビティが表示されます。これらがインストールされると、webide
などの他のユーザーも、追加のルビーを/usr/local/rvm
ディレクトリにインストールできるようになります。
Installing requirements for ubuntu.
Updating system..............................................................................................................
Installing required packages: libreadline6-dev, zlib1g-dev, libssl-dev, libyaml-dev, libsqlite3-dev, sqlite3, autoconf, libgdbm-dev, libncurses5-dev, automake, libtool, bison, libffi-dev...............................................................................................
Requirements installation successful.
$ rvm list
rvm rubies
* Ruby-1.9.3-p484 [ x86_64 ]
# => - current
# =* - current && default
# * - default
$ whoami
webide
$ rvm install 2.0.0-p195
...
Ruby-2.0.0-p195 - #validate binary
Ruby-2.0.0-p195 - #setup
Saving wrappers to '/usr/local/rvm/wrappers/Ruby-2.0.0-p195'........
Ruby-2.0.0-p195 - #importing default gemsets, this may take time..................
次に、インストールされているものをリストします。
$ rvm list
rvm rubies
* Ruby-1.9.3-p484 [ x86_64 ]
Ruby-2.0.0-p195 [ x86_64 ]
# => - current
# =* - current && default
# * - default
上記から、ユーザーwebide
がRubyをインストールできたことがわかります。
$ rvm use Ruby-2.0.0-p195 --default
Using /usr/local/rvm/gems/Ruby-2.0.0-p195
$ rvm list
rvm rubies
Ruby-1.9.3-p484 [ x86_64 ]
=* Ruby-2.0.0-p195 [ x86_64 ]
# => - current
# =* - current && default
# * - default
rvm
グループに属する別のユーザーとしてログインすると、Ruby-2.0.0-p195
をデフォルトに設定した場合の効果を確認できます。
$ rvm list
rvm rubies
=> Ruby-1.9.3-p484 [ x86_64 ]
* Ruby-2.0.0-p195 [ x86_64 ]
# => - current
# =* - current && default
# * - default
したがって、このユーザーはRuby-1.9.3-p484
を使用しており、Ruby-2.0.0-p195
をデフォルトとして使用するように設定されています。
ダウンロードに時間がかかる場合は、代わりにオフラインインストールを使用することをお勧めします。これにより、後で再インストールできます。または、このシステムを介したダウンロードに問題がある可能性があります。RVMインストーラーを1つのシステムにダウンロードしてから、scp
を使用してインストーラーをこのシステムに後でコピーできます。
$ curl -L https://github.com/wayneeseguin/rvm/tarball/stable -o rvm-stable.tar.gz
詳細については、こちら オフラインモードのRVM を参照してください。
debianベースのディストリビューションを実行しているので、Rubyをインストールする最も簡単な方法は、以下をrootとして実行することです(たとえば、Sudo
または任意の方法を使用して)。
aptitude install Ruby