Встановіть рубін 2.2.3 через apt


16

Як встановити Ruby 2.2.3 через apt на Ubuntu Wily? Я спробував sudo apt-get install ruby2.2-devі sudo apt-get install ruby2.2(Яка різниця, btw) і обидві команди, здається, встановили досить багато. Однак після цього рубіну не буде виконано.


Ви абсолютно встановлюєте, хочете встановити ruby ​​2.2.3 через apt? Пакет * -dev містить заголовки та файли, які *, можливо, знадобляться для правильної роботи. перевірити офіційний ruby-lang.org, він містить інформацію, необхідну для правильної установки ruby ​​2.2.3
enzo

зверніться, будь ласка, чи це корисно [ gorails.com/setup/ubuntu/15.10]
Раван,

1
@maetsoh Навіщо мені встановлювати кожен пакет із apt, крім рубіну? Мені подобаються менеджери пакунків.
Міхель де Маре

Чи є Ruby частиною механізму "альтернативи" на Ubuntu? Якщо ні, то, можливо, варто використовувати щось на зразок rbenv для управління встановленнями Ruby. Особливо, якщо вам потрібно використовувати різні версії Ruby одночасно. М'яке зв’язування може стати трохи стомлюючим при розробці Rails тощо.

Я використовую rbenv локально для перемикання версій, тож варто клопоту. Але на виробництві мені потрібна лише 1 рубінова версія, і тоді я віддаю перевагу стандартному менеджеру пакунків. Я прочитаю про механізм "альтернативи". ( manpages.ubuntu.com/manpages/vivid/en/man8/… )
Мічіель де Маре

Відповіді:


7

apt-get install ruby2.2дає вам виконуваний рубін - це просто називається ruby2.2. Gem і irb однакові (тобто gem2.2 install bundlerпрацюватимуть, irb2.2дадуть вам запит irb.)

Це нормально для Ubuntu, і система альтернатив, як правило, означає, що вам не потрібно про це дбати, але з будь-якої причини рубін не керується альтернативами в Ubuntu. Але ми можемо це зробити:

sudo update-alternatives --install /usr/bin/ruby ruby /usr/bin/ruby2.2 400 \
 --slave /usr/bin/rake rake /usr/bin/rake2.2 \
 --slave /usr/bin/ri ri /usr/bin/ri2.2 \
 --slave /usr/bin/rdoc rdoc /usr/bin/rdoc2.2 \
 --slave /usr/bin/gem gem /usr/bin/gem2.2 \
 --slave /usr/bin/irb irb /usr/bin/irb2.2 \
 --slave /usr/share/man/man1/ruby.1.gz ruby.1.gz /usr/share/man/man1/ruby2.2.1.gz \
 --slave /usr/share/man/man1/rake.1.gz rake.1.gz /usr/share/man/man1/rake2.2.1.gz \
 --slave /usr/share/man/man1/ri.1.gz ri.1.gz /usr/share/man/man1/ri2.2.1.gz \
 --slave /usr/share/man/man1/rdoc.1.gz rdoc.1.gz /usr/share/man/man1/rdoc2.2.1.gz \
 --slave /usr/share/man/man1/gem.1.gz gem.1.gz /usr/share/man/man1/gem2.2.1.gz \
 --slave /usr/share/man/man1/irb.1.gz irb.1.gz /usr/share/man/man1/irb2.2.1.gz

Після цього буде зареєстровано рубін в системі альтернатив і, оскільки є лише один вибір, буде встановлено ruby 2.2за замовчуванням. Це створить символьні посилання та дозволить використовувати ruby/ gem/ тощо, не додаючи 2.2 в кінці.

Це дещо оновлена ​​версія інструкцій, знайдена на веб- сайті https://leonard.io/blog/2012/05/installing-ruby-1-9-3-on-ubuntu-12-04-precision-pengolin/


update-alternative: error: альтернативні дорогоцінні камені не можуть бути рабами рубіну: це головна альтернатива
Євген Кулик

17

Гаразд, це працювало для мене принаймні яскраво:

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

Помірно, я отримую помилку, оскільки URL-адреса http://ppa.launchpad.net/brightbox/ruby-ng/ubuntu/dists/wily/main/binary-amd64/відсутня, є лише http://ppa.launchpad.net/brightbox/ruby-ng/ubuntu/dists/devel/main/binary-amd64/.


те ж саме на debian jessie: /
holms
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.