Jak zainstalować Ruby 2.1.4 na Ubuntu 14.04


119

Nie wiem, jak zainstalować najnowszą wersję Ruby na Ubuntu.

Najpierw zainstalowałem domyślny Ruby 1.9.3, używając

sudo apt-get install ruby

Następnie próbowałem zainstalować wersję 2.0 przy użyciu

sudo apt-get install ruby2.0

Moja wersja Rubiego to nadal „ruby 1.9.3p484 (2013-11-22, wersja 43786) [x86_64-linux])”

Co powinienem zrobić?


ta odpowiedź była bardzo pomocna przy instalacji menedżera wersji Ruby, który pozwala na pobieranie i używanie dowolnej wersji w środowisku domowym, kiedy tylko chceszsudo
Jeff Puckett

Odpowiedzi:


131

Przede wszystkim zainstaluj wstępnie wymagane biblioteki:

sudo apt-get update
sudo apt-get install git-core curl zlib1g-dev build-essential libssl-dev libreadline-dev libyaml-dev libsqlite3-dev sqlite3 libxml2-dev libxslt1-dev libcurl4-openssl-dev python-software-properties libffi-dev

Następnie zainstaluj rbenv, który jest używany do instalacji Rubiego:

cd
git clone https://github.com/rbenv/rbenv.git ~/.rbenv
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(rbenv init -)"' >> ~/.bashrc
exec $SHELL

git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build
echo 'export PATH="$HOME/.rbenv/plugins/ruby-build/bin:$PATH"' >> ~/.bashrc
exec $SHELL

rbenv install 2.3.1
rbenv global 2.3.1
ruby -v

Następnie (opcjonalnie) powiedz Rubygems, aby nie instalował lokalnej dokumentacji:

echo "gem: --no-ri --no-rdoc" > ~/.gemrc

Kredyty: https://gorails.com/setup/ubuntu/14.10

Ostrzeżenie!!! Są problemy z Gnome-Shell. Zobacz komentarz poniżej.


1
Warto zauważyć, że użytkownik może być zmuszony również uruchomić następujące polecenie, przed zainstalowaniem ruby ​​2.2.0 sudo apt-get install libffi-dev
ThaDick

Ostrzeżenie! Dodanie tych wierszy do plików .bash * może spowodować, że Gnome-Shell się nie załaduje. Nie mogłem się zalogować, dopóki nie usunąłem tych linii.
Cerin

Thnaks, @Cerin. Dodano ostrzeżenie do wpisu. Czy poradziłeś sobie z tym problemem? Jak dodać ścieżkę?
dubadub

5
Nie, nigdy tak naprawdę tego nie rozwiązałem. Próbowałem zamiast tego zainstalować rvm, ale najwyraźniej instalator (z get.rvm.io ) wykrywa Ubuntu i dosłownie odmawia instalacji, przekierowując do pytania SO, które z kolei zaleca uruchomienie tego samego instalatora ... Więc zamiast tego zdecydowałem się całkowicie odinstalować Ruby z mojego systemu i przełącz wszystkie moje narzędzia Ruby na odpowiedniki w Pythonie.
Cerin

Czy problem z powłoką gnome jest związany ze sposobem modyfikowania zmiennej PATH? Zawsze czytałem, że nowe ścieżki powinny być dołączane do PATH, a nie poprzedzane. Przeczytałem również, że zmienne środowiskowe należy dodawać do ~ / .profile lub ~ / .bash_profile zamiast ~ / .bashrc.
japhyr

206

Istnieje PPA z aktualnymi wersjami Ruby 2.x dla Ubuntu 12.04+:

$ sudo apt-add-repository ppa:brightbox/ruby-ng
$ sudo apt-get update
$ sudo apt-get install ruby2.4

$ ruby -v
ruby 2.4.1p111 (2017-03-22 revision 58053) [x86_64-linux-gnu]

Jak wybrać rubysię ruby2.3chociaż?
njzk2

1
@ njzk2 Spróbuj sudo update-alternatives --config rubyi postępuj zgodnie z instrukcjami. Przy nowej instalacji bez oficjalnego pakietu Ubuntu Ruby pakiet PPA skonfigurował rubyalias ruby2.3automatycznie.
Vlad Frolov

Chociaż ten sposób jest o wiele łatwiejszy do zrobienia, korzystanie z PPA nie jest naprawdę „najlepszym” sposobem, PPA mogą zniknąć, często nie są tak starannie zestawiane jak oficjalne kanały itp. PPA to repozytorium utworzone przez jedną osobę i biegnie samodzielnie. Po prostu bądź ostrożny.
John Hunt

38

Najlepiej zainstalować go za pomocą rvm (menedżera wersji ruby).
Uruchom następujące polecenia w terminalu:

sudo apt-get update
sudo apt-get install build-essential make curl
\curl -L https://get.rvm.io | bash -s stable
source ~/.bash_profile
rvm install ruby-2.1.4

Następnie sprawdź zainstalowane i używane wersje Ruby:

rvm list
rvm use --default ruby-2.1.4

Możesz również bezpośrednio dodać ruby ​​bin path do zmiennej PATH. Ruby jest zainstalowany w

$HOME/.rvm/rubies export PATH=$PATH:$HOME/.rvm/rubies/ruby-2.1.4/bin

12
Przepuszczanie dowolnego kodu przez sieć to zły pomysł. Oto „Ściana wstydu” przedstawiająca obraźliwe witryny internetowe: curlpipesh.tumblr.com
labyrinth

1
gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3
Brett

JECompton: Lepiej porozmawiać o tym z ludźmi z rvm, ponieważ jest to kanoniczna metoda instalacji rvm.
Lonny Eachus

6

Użyj RVM (Ruby Version Manager), aby zainstalować i zarządzać dowolnymi wersjami Rubiego. Możesz mieć wiele wersji Rubiego zainstalowanych na komputerze i możesz łatwo wybrać tę, którą chcesz.

Aby zainstalować typ RVM w terminalu:

\curl -sSL https://get.rvm.io | bash -s stable

I niech to zadziała. Po tym będziesz mieć zainstalowany RVM wraz z Rubim.

Źródło: witryna RVM


1
Aby zainstalować RVM, postępuj zgodnie ze wskazówkami na ich stronie instalacji . Używanie RVM to znacznie więcej niż uruchamianie cURL i strona instalacyjna omawia to. Należy ją przeczytać przed instalacją, aby zapoznać się z jej działaniami, w tym krokami rozwiązywania problemów.
Tin Man

@theTinMan Oczywiście w pełni się z tobą zgadzam. Dlatego dodałem ich stronę jako źródło, aby autor tego wątku mógł przeczytać o nim więcej.
Bartosz Łęcki

Cóż, strona główna RVM to jedno, ale większość pytań RVM, które tu mamy, mogłaby zostać rozwiązana natychmiast, gdyby ludzie przeczytali całą stronę instalacji.
Tin Man

1
Przepuszczanie dowolnego kodu przez sieć to zły pomysł. Oto „Ściana wstydu” przedstawiająca obraźliwe witryny internetowe: curlpipesh.tumblr.com
labyrinth

3

aktualizacja Ubuntu:

 sudo apt-get update
 sudo apt-get install git-core curl zlib1g-dev build-essential libssl-dev libreadline-dev libyaml-dev libsqlite3-dev sqlite3 libxml2-dev libxslt1-dev libcurl4-openssl-dev python-software-properties libffi-dev

Zainstaluj rvm, który zarządza wersjami ruby:

aby zainstalować rvm, użyj następującego polecenia.

 \curl -sSL https://get.rvm.io | bash -s stable
 source ~/.bash_profile
 rvm install ruby-2.1.4

Sprawdź zainstalowane i używane wersje Ruby:

rvm list
rvm use --default ruby-2.1.4
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.