web-dev-qa-db-ja.com

Ruby MacOSXではMacポート経由

私はRubyとMacOSXの両方に慣れていませんが、Unixコマンドについてはかなりの経験があります。Ruby 1.9を介してインストールしました。 MacPortsコマンド(port install Ruby19)次に、ルートから検索を実行して、どこに移動したかを把握する必要がありました。これは、/ opt/local/var/macports/software/Ruby19/1.9.1-p376_0 /であることが判明しました。 opt/local/bin /Ruby1.9。

Ruby(1.8.6)の現在のバージョンは、/ System/Library/Frameworks/Ruby.framework/Versions/Current/usrへのシンボリックリンクである/ usr/bin/Rubyを介して実行されます。/bin/Rubyここで、Currentは1.8というディレクトリへのシンボリックリンクです。

Ruby 1.9を(irbなどの関連ツールとともに)デフォルトにしたいのですが、それはできますが、従来の方法があるかどうかを知りたいのですが。 MacPortsパスを/System/Library/Frameworks/Ruby.framework/Versions/1.9にコピーまたはリンクしてから、Currentを1.9にポイントしますか?(実行可能ファイルの名前を変更またはコピーします:Ruby1.9からRuby、irb1.9または、/ usr/bin/Rubyリンク(および/ usr/bin/irbなど)を吹き飛ばして、MacPortsバージョンを指す新しいリンクを作成する必要がありますか?

29
Greg Charles

私のアドバイス:

$ port uninstall Ruby1.9

次に、これに従ってください: https://rvm.io/rvm/install/

次に:

$ rvm install 1.9.2
$ rvm --default 1.9.2

あなたもrvm install macrubyココアをおもちゃにする。

25
Amadan

MacPorts2.1.3でportselectコマンドを簡単に使用できます

$Sudo port select --set Ruby ruby19
28
Jason Zhu

代わりにnosuffixバリアントをインストールします。

Sudo port install Ruby19 +nosuffix

新しいRubyバージョンは、プリインストールされているバージョンよりも優先されるはずです。

26
You

最新バージョンのmacports(2.1.3以降)では、port selectコマンドを使用できます。

port select --list Ruby
Sudo port select --set Ruby ruby19

以前のバージョンのmacportsの場合、番号付きのRubyバージョンへのシンボリックリンクを作成できます。これは、macportsが通常異なるバージョンのパッケージ間の切り替えを処理する方法です。

cd /opt/local/bin
Sudo ln -s Ruby1.9 Ruby
17
amicitas

私は強くお勧めします [〜#〜] rvm [〜#〜] 。少し読む必要がありますが、インストールしたら、rvm install 1.9(またはjruby、ree、1.8など)を使用してRubyをインストールし、rvm 1.9を使用してそれらを切り替えることができます。 Rubyの各バージョンにも、完全に分離された独自のRubygemのセットがあります。

4
Matt Briggs

Ruby1.9バイナリは/opt/local/binにインストールする必要があります。そうでない場合は、ポートをアクティブ化していない可能性があります。

Ruby 1.9をデフォルトのルートにする最も簡単な方法は、RubyからRuby1.9へのエイリアスを作成することです。Bashを使用している場合は、次の方法で行うことができます。これをBash構成ファイルに入れます:

alias Ruby='/opt/local/bin/Ruby1.9'
2
mipadi

アンインストールRubyバージョン1.8:
SudoポートのアンインストールRuby
インストールRubyバージョン1.9:
SudoポートインストールRuby19
ターミナルを再開します

2
user1763487