2010-09-06 11 views
14

Próbujesz zainstalować nową wersję Rails 3 na OSX 10.6.Zainstaluj Rails 3 na OSX z RVM

Nigdy nie tknąłem Rubinowych lub Railsowych na tym komputerze od momentu zakupu.

Udało mi się zdobyć rvm i uzyskać Ruby 1.9.2. zainstalowany. Stamtąd utknąłem.

Próbowałem:

rvmsudo gem install rails -v 3.0.0 
sudo gem install rails --pre 
sudo gem install rails 
sudo gem update rails 

I uzyskać ten sam błąd Wynik za każdym razem:

ERROR: While executing gem ... (Errno::ENOENT) 
    No such file or directory - /Users/kevin/.rvm/gems/[email protected]/cache/activesupport-3.0.0.gem 

Jeśli zrobię listę gem, mówi LOKALNE perełki i nie wymienia nic.

Przeczytałem kilka poradników, ale szczerze mówiąc, żadna z nich nie rozwiązuje problemu i nie wkurza mnie. Dlaczego tak trudno jest zainstalować? Chciałbym się tego nauczyć, gdyby ktoś mógł mi pomóc w uruchomieniu.

starałem się postępować w ten sposób:

http://eddorre.com/posts/installing-rails-3-beta-4-using-rvm

a to:

http://hivelogic.com/articles/compiling-ruby-rubygems-and-rails-on-snow-leopard

która jest faktycznie związana z ROR prowadzi stronę internetową. Czy brakuje mi zależności? Jak je wprowadzić?

Jeśli robię rails -v uzyskać:

rails -v 
/Library/Ruby/Site/1.8/rubygems.rb:779:in `report_activate_error': Could not find RubyGem rails (>= 0) (Gem::LoadError) 
    from /Library/Ruby/Site/1.8/rubygems.rb:214:in `activate' 
    from /Library/Ruby/Site/1.8/rubygems.rb:1082:in `gem' 
    from /usr/bin/rails:18 
+0

Jaką wersję masz rubygmę? ($ gem -v) – raidfive

+0

RubyGems Version 1.3.7 – Kevin

Odpowiedz

27

Starsze wersje RVM miały błąd, który może spowodować, że wersje rubinowe aby crosswired ponieważ system operacyjny może buforować wykonywalne ścieżek dla który poleceń (szczególnie jeśli używasz Zsh). Zobacz tę długą, szczegółową, mind blowing post autorstwa Yehuda Katza na ten temat.

Co miałem zrobić to rano:

rvm update && rvm reload # update rvm 
rvm gemset delete rails3 # delete old gemset 
rvm install 1.9.2 
rvm use 1.9.2 
rvm gemset create rails3 
rvm use [email protected] 
which ruby   # check to be sure the ruby interpretter is properly set to 1.9.2 
hash -r    # if ruby interpretter is not pointing to 1.9.2 
gem install rails 
which rails   # check to be sure we are using rvm version of rails 

Uwaga: W nowszych wersjach RVM, trzeba będzie użyć rvm get stable zamiast rvm update

+0

DZIĘKUJEMY !!!!!!!! To działało i trwało tylko około 10 minut! – Kevin

+0

Dziękuję, że zadziałało również dla mnie –

+0

Mimo że zadziałało, muszę uruchomić program rvm use 1.9.2 i rvm używać 1.9.2 @rails3 przy każdym uruchomieniu terminalu. Czy istnieje sposób na zastąpienie podstawowej wersji OSX Ruby z wersjami 1.9.2 i Rails? – Kevin

2

Nie trzeba używać sudo podczas instalowania perełki z RVM. Jeśli postępujesz zgodnie ze wskazówkami here, aby zainstalować RVM, powinieneś być w stanie zrobić tylko rvm use 1.9.2; klejnicze szyny montażowe - wersja 3.0.0.

+0

Spróbuję tego. Stwierdzono, że nie znaleziono wersji 1.9.2-p0, a do zainstalowania rvm ruby-1.9.2-p0. Teraz to działa. – Kevin

+1

Dokładny błąd. Zaktualizowałem swoje pytanie z błędem, który dostaję z szyn -v. – Kevin

+0

Ścieżka uruchamianego polecenia Rails znajduje się w katalogu/Library. Jeśli RVM został poprawnie zainstalowany, byłby w /Users/user/.rvm/.Podejrzewam, że nie dodałeś linii do pliku .profile lub coś poszło nie tak. Proponuję, abyś całkowicie pozbył się RVM (rm -rf ~/.rvm), a także innych zainstalowanych Rubinów i spróbuj zainstalować go agaon, starannie podążając za wskazówkami. – AboutRuby

2

Nie musisz podawać wersji 3. Jeśli masz 1.9.2-p0, automatycznie otrzymasz szynę 3 po rvm gem install rails 3. uwaga: brak sudo. Myślę, że kiedy używasz sudo, używa on rubinu zainstalowanego na systemie. Jeśli uważasz, że potrzebujesz sudo, użyj rvmsudo.

Rzeczy prawdopodobnie stały się nieporządne, ponieważ śledzono przewodniki oparte na pre-stabilnym wydaniu szyn, które obejmowały wiele innych rzeczy. Jeśli chcesz, możesz spróbować odinstalować rvm i ponownie zrobić wszystko. To naprawdę nie jest takie trudne.

Pamiętaj, że potrzebujesz wersji 1.9.2, 1.9.1 nie będzie działać.

curl -O http://rvm.beginrescueend.com/releases/rvm-install-head 
sh rvm-install-head 
rvm install 1.9.2-p0 

# also remember to edit your bash profile and add the required lines 

# verify that 1.9.2-p0 shows up there 
rvm list 

# makes it so you're using it, and sets it as the default 
rvm use 1.9.2-p0 --default 

# verify this happened. should have => 1.9.2-p0 in the list 
rvm list 

# verify the version 
ruby --version 

# should automatically get 3.0 
# `rvm gem install` installs it for every single installed ruby version 
# in my experience 
gem install rails 

Kiedy zrobiłeś rvm gem install, myślę, że instaluje go na każdej wersji rubinowej zarejestrowałeś z RVM (przynajmniej to się stało w moim doświadczeniu), więc moje przypuszczenie jest to, że próbował wymusić zainstalowanie szyn 3 dla starsza instalacja rubinowa, w której brakowało wymaganych klejnotów.

Spokojnie, niewiele poleceń jest wymaganych. Jeśli masz do czynienia z "hackami" lub obejściami, to robisz to źle. Na szczęście łatwo zacząć od nowa. Aby usunąć rvm, po prostu wykonaj rm -rfv ~/.rvm, a także rm ~/.rvmrc, jeśli tam jest.

Daj mi znać, jak to działa.

+0

Jak odinstalować RVM? – Kevin

+0

Proste jak rm -rfv ~/.rvm, :) również może chcieć usunąć ~/.rvmrc, jeśli jest tam –

+0

Gotcha. To wystarczyło. – Kevin

1

Używam do tego samego problemu (próbował odinstalowywania i instalowania jak Blaenk sugerowane)

RVM -v RVM 1.0.2 Wayne E. Seguin ([email protected]) [http://rvm.beginrescueend.com/]

Ruby -v rubin 1.9.2p0 (2010-08-18 rewizja 29036) [x86_64-darwin10.4.0]

gem install szyn BŁĄD: Podczas wykonywania gem ... (errno :: ENOENT) Nie ma takiego pliku lub katalog - /Users/pragnesh/.rvm/gems/ruby-1.9.2-p0 /cache/activesupport-3.0.0.gem

+0

To jest to, co kończę, niezależnie od tego, jak go zainstaluję. – Kevin

2

pracy przez ten sam jako nowy mac osx użytkownik bla bla

Wygląda katalogu pamięci podręcznej nie zostanie wykonane, spróbuj mkdir $ HOME/.rvm/Kamienie szlachetne/cache

tej pory tak dobrze, że po ...

+0

Pracowałem również dla mnie. –

1

Po wykonaniu "Update RVM & & RVM reload" rvm został zaktualizowany do wersji 1.04 (zamiast wersji 1.02, którą dostałem za pośrednictwem zalecanej instalacji GIT wczoraj !?) działało dobrze.

+0

Tak. To prawdopodobnie musi być wymienione na stronie przewodników ROR. Mam wrażenie, że wielu ludzi boryka się z tym samym problemem, co my. – Kevin

0

Robi to po aktualizacji RVM i odświeżyć pracował dla mnie:

rm -rf .bundle && bundle install 
1

Rozwiązanie pracował dla mnie, z kilkoma tweeks:

Zamiast rvm update miałem używać rvm rubygems. Następnie, po wykonaniu całej pracy z posta 2, musiałem wykonać bundle install i wprowadziłem rvm use [email protected] do mojego pliku .rvmrc. Wszystko teraz działa jak urok, nawet po uruchomieniu nowej powłoki lub sesji terminalowej. Pełna lista poleceń, których użyłem, to:

>> NEW >> rvm rubygems 
rvm reload     # update rvm 
rvm gemset delete rails3 # delete old gemset 
rvm install 1.9.2 
rvm use 1.9.2 
rvm gemset create rails3 
rvm use [email protected] 
which ruby     # check to be sure the ruby interpretter is properly set to 1.9.2 
>> DID NOT NEED >> hash -r # if ruby interpretter is not pointing to 1.9.2 
gem install rails 
which rails    # check to be sure we are using rvm version of rails 
>> NEW >> bundle install 
>> NEW >> cat 'rvm use [email protected]' > .rvmrc 
+0

otrzymuję plik bazy danych /Users/jp/.rvm/config/packages nie istnieje – johndpope