2012-11-13 1 views
1

Mac OSX 10.7.4를 사용 중입니다. 그래서 루트가되는 동안 RubyGem으로 레일을 설치했습니다.레일이 작동하는 이유 루트 일 때 왜 작동합니까?

내가 루트 해요, rails -v이 산출 :

bash-3.2# rails -v 
Rails 3.2.8 

을하지만 루트, rails -v, 수율이 아니에요 때

Sreejiths-MacBook-Pro:~ sreejith$ rails -v 
/opt/local/lib/ruby/site_ruby/1.8/rubygems/dependency.rb:247:in `to_specs': Could not find railties (>= 0) amongst [bundler-1.2.1, rake-0.9.2.2, rubygems-bundler-1.1.0, rvm-1.11.3.5] (Gem::LoadError) 
    from /opt/local/lib/ruby/site_ruby/1.8/rubygems/dependency.rb:256:in `to_spec' 
    from /opt/local/lib/ruby/site_ruby/1.8/rubygems.rb:1231:in `gem' 
    from /opt/local/bin/rails:22 

왜 그렇게입니까?

답변

2

터미널에서 root로있을 때 보석의로드 경로는 무엇입니까? irb에 들어가서 $LOAD_PATH을 입력하면이 사실을 알 수 있습니다. $LOAD_PATH에 액세스 할 수있는 것이 있습니까? 보석이 루트의 홈 디렉토리 (또는 서브 디렉토리)에 설치 되었습니까?

rbenv 또는 rvm과 같은 것을 사용하고 있습니까? 이 도구들은 모두 시스템마다가 아니라 사용자별로 루비를 설정합니다. 한 세트의 보석을 뿌리로 사용하는 것은 당신이 로그온 할 때 불충분합니다.

마지막으로 번들러를 다시 설치하려면 sudo gem install bundler을 시도한 다음 bundle install을 사용하여 보석을 다시 설치하십시오.

+0

+1은 RVM을 사용하기 때문에 실제로^H^H Ruby와 보석을 연결합니다. –

관련 문제