Can't install passenger 3 on Snow Leopard (wit

2019-03-28 02:06发布

问题:

I've been trying to install passenger with no success yet.

I've installed the gem, but when I run

passenger-install-apache2-module

it tells me

This installer must be able to write to the following directory:
/Users/myname/.rvm/gems/ruby-1.9.2-p0/gems/passenger-3.0.0
But it can't do that, because you're running the installer as myname.
Please re-run this installer as root.

but if I do

sudo passenger-install-apache2-module

I get

/Users/myname/.rvm/rubies/ruby-1.9.2-p0/lib/ruby/1.9.1/rubygems.rb:762:in `report_activate_error': Could not find RubyGem passenger (>= 0) (Gem::LoadError)

from /Users/myname/.rvm/rubies/ruby-1.9.2-p0/lib/ruby/1.9.1/rubygems.rb:219:in activate' from /Users/myname/.rvm/rubies/ruby-1.9.2-p0/lib/ruby/1.9.1/rubygems.rb:1065:ingem' from /Users/myname/.rvm/gems/ruby-1.9.2-p0/bin/passenger-install-apache2-module:18:in `'

I've tried to look at those files, but cannot understand what's wrong.

can you please help?

thanks, P

回答1:

Two solutions:

  1. Use rvmsudo, not sudo.
  2. Fix your directory permissions. /Users/myname/.rvm should be writable for myname but for some reason you caused that not to be the case.


回答2:

I think you can use system ruby instead of RVM ruby for installing passenger:

rvm use default
sudo gem install passenger
sudo passenger-install-apache2-module


回答3:

I actually chmod the folder as Shingara suggested and it worked.

the only thing I can't understand is why issuing the command with sudo lead to problems :(

thanks for your help!