web-dev-qa-db-ja.com

インストールされているHomebrewのエイリアスを作成するにはどうすればよいですかRuby / usr / local / binにある1.9gemバイナリ?

HomebrewのRuby 1.9はrubygemsに同梱されています。gem install ...を実行すると、ファイルとバイナリが長いパスにインストールされます。たとえば、bundlerは次の場所にインストールされます。

/usr/local/Cellar/Ruby/1.9.3-p0/lib/Ruby/gems/1.9.1/gems/bundler-1.0.21/bin/bundle

gemがこれらのバイナリを/usr/local/binなどの共通の場所に自動的にシンボリックリンクして、これらの各バイナリを手動でリンクする必要がないようにしたいのですが。これは可能ですか?

8
# Install 1 or more gems
gem install Rails
gem install aws-sdk
# Then run these 2 commands to create bin links
brew unlink Ruby
brew link Ruby
# Finally open a new terminal session (no idea why but it worked for me)
5
Jim Cleveland

StackOverflowに関連する質問: インストールRuby GemがHome Brewで機能しない

この小さなワンライナーは完璧に機能し、brew-infoをクエリするよりも高速です。

export PATH=$(brew --prefix Ruby)/bin:$PATH

詳細については 私の答えはそこにあります

5
Timo Tijhof

.bashrcに次の行を追加することになりました

Ruby_BINDIR=`brew info Ruby|grep /bin|tr -d ' '`
export PATH=$Ruby_BINDIR:$PATH

前述のbrewbygemsはあなたが望むものではなく、osx-builtin Rubyとhomebrewが一緒にNiceをプレイするためのものであり、Ruby自体をインストールした場合ではありません自作経由。

4
Fabian Zeindl

これは私のために働いた: brewbygems

私はそのサイトの指示に従い、Ruby gemsを(再)インストールする前に 'brewbygems' gemをインストールしました。私が知る限り、brewbygemsはgemシステムを拡張して認識させます。自作。その後、gemがインストールされると、バイナリでのシンボリックリンクが処理されます。

1
Andy Jackson

ドットファイルに触れたくない場合は、次のことを試すことができます。

brew unlink Ruby && brew link Ruby

新しいgemsバイナリシンボリックリンクが作成されます。

Unlinking /usr/local/Cellar/Ruby/2.0.0-p0... 20 links removed
Linking /usr/local/Cellar/Ruby/2.0.0-p0... 25 symlinks created
0
sparanoid