问题
So i have just swapped over to mac from ubuntu and setting up the env has not been as easy as promised.
this is the process i followed.
- installed xcode - then went into the prefrences and downloaded the
command line tools
then verified that the right version was installed, by running
gcc --version
i686-apple-darwin11-llvm-gcc-4.2 (GCC) 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.11.00) Copyright (C) 2007 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
- then installed homebrew
$ ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go)"
ran
brew doctor
and this is what i getYour system is ready to brew.
5.installed git brew update
+ brew install git
6.linked my pc to my git account via ssh
7.installed Rbenv
$ brew update
$ brew install rbenv
$ brew install ruby-build
added eval "$(rbenv init -)"
to my .bash_profile file
ran
rbenv install -list
to see all the versions i could install and then ran$ rbenv install 1.9.3-p327 $ rbenv global 1.9.3-p327
(i should have rehashed rbenv but i forgot) i then ran
gem install bundler
then went into one of my repo's and ran
bundle install
which blew up with errorsGem::InstallError: better_errors requires Ruby version >= 1.9.2. An error occurred while installing better_errors (0.7.0), and Bundler cannot continue. Make sure that `gem install better_errors -v '0.7.0'` succeeds before bundling.
ran ruby -v
and saw that it was on 1.8.7 "balls" - i exclaimed
to remedy this i did the following
rbenv rehash
ruby -v
and gotruby 1.9.3p327 (2012-11-10 revision 37606) [x86_64-darwin12.3.0]
then high fived myselfthen tried to run bundle and the same error comes up ??
$ which bundle /usr/bin/bundle $ which gem /Users/fortknokx/.rbenv/shims/gem
so this is now where i stand confused as heck. as i said this is my third day using mac and i am pretty new to understanding the $PATH i am sure that i made a foul up somewhere. any advice i am open to.
ps this is what i have in my .bash_profile
export PATH="/usr/local/bin:/usr/local/bin/sublime:~/bin:$PATH"
eval "$(rbenv init -)"
回答1:
The problem seems to be that you're using a system ruby installed bundler, and not one installed with your rbenv ruby.
Run ruby --version
to make sure your rbenv ruby is active, then run gem install bundler
followed by rbenv rehash
and then try reinstalling your gems and see if that works.
回答2:
After many installs of rbenv, I too was unsure of why the correct ruby was not being used. Turns out the insertion of the eval statement was prior to the reorganized exports of PATH and the eval failed quietly. Make certain the PATH is established above the eval statement.
来源:https://stackoverflow.com/questions/16353382/setting-up-env-osx-rbenv-and-bundle-battle