Utworzyłem nowe konto użytkownika na moim Macu i próbuję zaktualizować go do aktualnej wersji Ruby (1.9.2) z domyślnej lamparty śnieżnej 1.8.7. Czy ktoś może wskazać mi samouczek lub wyjaśnić najlepszą metodę aktualizacji Rubiego na moim komputerze Mac z wersji 1.8 do 1.9.2? Dzięki
źródło
Jak sugeruje The Tin Man (powyżej) RVM ( Ruby Version Manager ) jest standardem uaktualniania twojej instalacji Ruby na OSX: https://rvm.io
Aby rozpocząć, otwórz okno terminala i wydaj następujące polecenie:
(musisz zaufać zespołowi programistów RVM, że polecenie nie jest złośliwe - jeśli jesteś paranoicznym pingwinem, takim jak ja, zawsze możesz przeczytać źródło : https://github.com/wayneeseguin/rvm ) Po zakończeniu ty musisz ponownie uruchomić terminal , aby uzyskać
rvm
pracę poleceń.(pokazuje najnowsze dostępne wersje Rubiego)
W przypadku określonej wersji, po którym następuje
lub jeśli chcesz tylko najnowszą (aktualną) wersję:
(instaluje aktualne wydanie stabilne - w czasie pisania ruby-2.3.1 - proszę zaktualizować tę wiki, gdy zostaną wydane nowe wersje)
Uwaga na temat kompilowania Rubiego : W moim przypadku musiałem również zainstalować Homebrew http://mxcl.github.com/homebrew/, aby uzyskać klejnoty, których potrzebowałem ( RSpec ), co z kolei zmusza cię do zainstalowania Xcode (jeśli jeszcze tego nie zrobiłeś ) https://itunes.apple.com/us/app/xcode/id497799835 ORAZ / LUB zainstaluj pakiet GCC z: https://github.com/kennethreitz/osx-gcc-installer, aby uniknąć błędów podczas uruchamiania programu „ make ”.
Edycja: Od Mavericks możesz zainstalować tylko narzędzia wiersza poleceń Xcode zamiast całego pakietu Xcode, który jest dostarczany z gcc i wieloma innymi rzeczami, których możesz potrzebować do budowania pakietów. Można go zainstalować, uruchamiając
xcode-select --install
i postępując zgodnie z instrukcjami wyświetlanymi na ekranie.Uwaga dotycząca błędów: jeśli podczas wykonywania tego polecenia pojawi się błąd „ RVM nie jest funkcją ”, odwiedź: Jak zmienić wersję Ruby za pomocą RVM? rozwiązania.
źródło
W przypadku naparu jest to jedna linijka:
(zakładając, że wybrałeś homebrew / wersje, co można zrobić, uruchamiając
brew tap homebrew/versions
)Zadziałało dla mnie po wyjęciu z pudełka na OS X 10.8.4. Lub jeśli chcesz 2.0, po prostu
brew install ruby
Mówiąc bardziej ogólnie,
brew search ruby
pokazuje różne dostępne repozytoria, a jeśli chcesz uzyskać naprawdę szczegółowe informacje, możeszbrew versions ruby
zamiast tego użyć i pobrać określoną wersję.źródło
Wiem, że to starszy post, ale chciałbym dodać kilka dodatkowych informacji na ten temat. Po pierwsze, myślę, że
rvm
to świetnie, ALE nie było to aktualizowanie Rubiego z mojego systemu (MAC OS Yosemite).Co
rvm
robiłem: instalowałem w innym miejscu i tworzyłem tam ścieżkę do mojej zmiennej środowiskowej ... I trochę się nudziłem, ponieważ miałem teraz dwa ruby w moim systemie.Aby to naprawić, odinstalowałem
rvm
, a następnie użyłem dostępnego tutaj menedżera pakietów Homebrew i zainstalowałem polecenie terminalu ruby throwbrew install ruby
.A potem wszystko działało idealnie! Rubin z mojego systemu został zaktualizowany! Mam nadzieję, że pomoże to kolejnym poszukiwaczom przygód!
źródło
rvm
czybrew
. to pomaga. dziękiNie zgodzę się tutaj z Blaszanym Człowiekiem. Uważam, że rbenv jest lepszy niż RVM.
rbenv
nie koliduje drastycznie z powłoką, tak jak robi to RVM, i pozwala na dodawanie oddzielnych instalacji Rubiego w zwykłych folderach, które można bezpośrednio sprawdzić. Pozwala samodzielnie skompilować Rubiego. Dobry zarys różnic tutaj: https://github.com/sstephenson/rbenv/wiki/Why-rbenv%3FPodaję tutaj instrukcje kompilacji Rubiego 1.9 dla rbenv . Dalsze, bardziej szczegółowe informacje tutaj . Użyłem tej techniki z łatwym sukcesem w Snow Leopard, Lion i Mountain Lion.
źródło
Artykuł Dana Benjamina Hivelogic Instalowanie Ruby, RubyGems i Rails w Snow Leopard jest zalecanym miejscem, chociaż artykuł dotyczy wersji 1.8, więc oto instalacja specyficzna dla Ruby 1.9 w systemie Snow Leopard . Uważaj na 64-bitową rzecz ... albo przejdź do 64-bitowego `` grubego '' (jak jest - na przykład - Apache na OS X, który może powodować problemy z bibliotekami 32-bitowymi) lub sprawdź wszystkie klejnoty, które prawdopodobnie użyć, aby upewnić się, że są odpowiednie dla wersji 64-bitowej.
źródło
To polecenie faktycznie działa
\curl -L https://get.rvm.io | bash -s stable --ruby
źródło
Jak wspomniano wcześniej, wersja pakietu może być zbyt wysoka dla twojej wersji railsów.
Napotkałem ten sam problem używając Rails 3.0.1, które wymagają Bundler v1.0.0 - v1.0.22
Sprawdź wersję pakietu za pomocą:
gem list bundler
Jeśli twoja wersja pakietu nie mieści się w odpowiednim zakresie, stwierdziłem, że to rozwiązanie działa:
rvm @global do gem uninstall bundler
Uwaga: rvm jest wymagane do tego rozwiązania ... kolejny przypadek, dlaczego powinieneś używać rvm w pierwszej kolejności.
źródło
Jest kilka innych menedżerów wersji do rozważenia, zobacz kilka przykładów, a jeden, którego nie ma na liście, a który wkrótce spróbuję, to ch-ruby . Próbowałem rbenv, ale miałem z nim zbyt wiele problemów. RVM jest moją ostoją, chociaż czasami ma dziwny problem (stąd moje pragnienie wypróbowania ch-ruby, gdy mam szansę). Nie dotykałbym systemu Ruby, ponieważ inne rzeczy mogą na nim polegać.
Powinienem dodać, że kilka razy skompilowałem również mojego własnego Rubiego i użycie artykułu Hivelogic (jak zasugerował Dave Everitt) jest dobrym pomysłem, jeśli wybierzesz tę drogę.
źródło