How do I alias a Homebrew installed Ruby 1.9 gem binary in /usr/local/bin?

6,123

Solution 1

Related question on StackOverflow: Installing Ruby gems not working with Home Brew

This little one-liner works perfect and is faster than querying brew-info:

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

More info in my answer there.

Solution 2

# 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)

Solution 3

I ended up adding the following lines to .bashrc

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

The afore-mentioned brewbygems is not what you want, it's meant for the osx-builtin ruby and homebrew to play nice together, not if you installed ruby itself via homebrew.

Solution 4

This worked for me: brewbygems

I followed the instructions on that site, and installed the 'brewbygems' gem before (re)installing my ruby gems. As far as I can tell, brewbygems extends the gem system to make it aware of Homebrew. It then takes care of symlinking in the binaries when gems are installed.

Share:
6,123

Related videos on Youtube

Sridhar Ratnakumar
Author by

Sridhar Ratnakumar

Updated on September 18, 2022

Comments

  • Sridhar Ratnakumar
    Sridhar Ratnakumar over 1 year

    Homebrew's Ruby 1.9 ships with rubygems. Doing gem install ... installs files and binaries into some long-winded path. For example, bundler is installed at:

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

    I'd like to have gem automatically symlink these binaries into a common location such as /usr/local/bin so that I don't have to manually link each of these binaries. Is this possible?

  • ChrisF
    ChrisF about 12 years
    Please add more information as to why this worked for you.
  • Andy Jackson
    Andy Jackson about 12 years
    I've updated my answer with more detail. Does that answer your question?
  • jfd
    jfd over 11 years
    This solved my problem of getting import failures for compass plugins during compiling a compass project, because it internally used macs builtin version of ruby.
  • Brice
    Brice over 11 years
    Actually even if the gem bin doesn't autocomplete, you can type it, it's in the path. You don't have to restart a terminal session.
  • David
    David over 11 years
    This works as advertised. Great!
  • GDorn
    GDorn almost 5 years
    Homebrew no longer links ruby, as it refuses to shadow binaries provided by OS X. You can put the ruby binary in your path, but it doesn't add binaries provided by gems.