Bagaimana cara menginstal Ruby> = 2.1.9?

9

Saya mencoba sudo apt-get install rubytetapi akan menginstal Ruby 2.1.5.

Bagaimana saya bisa menginstal versi> = 2.1.9?

Trevor
sumber

Jawaban:

6

Ada paket 2.3 ruby dalam repo Raspbian, tetapi karena apt show rubypada sistem "jessie" menunjukkan 2.1, saya menganggap ini adalah paket "peregangan" - yaitu, bagian dari cabang pengujian / tidak stabil saat ini.

Namun, saya berlari ldddi atasnya dan libruby2.3dan mereka sendiri tidak memiliki persyaratan yang bukan bagian dari jessie, sehingga Anda dapat menginstal mereka dengan cara ini:

  1. Edit /etc/apt/sources.listdan tambahkan baris:

    deb http://archive.raspbian.org/raspbian/ stretch main
  2. Jalankan apt get update; mungkin butuh beberapa saat.

Lalu coba apt install ruby2.3. Ini seharusnya bekerja tetapi ada kemungkinan permata 2,3 rubi dari distro yang akan membutuhkan upgrade penuh dari sistem untuk meregang. Saya memiliki satu pi saya melakukan ini berbulan-bulan yang lalu dan itu baik-baik saja, tapi saya tidak menggunakan ruby ​​dan hanya menggunakan pi itu untuk hal-hal tertentu, jadi perlu diingat bahwa peningkatan penuh untuk pengujian dapat (tetapi kemungkinan besar tidak akan) menghasilkan dalam komplikasi.

Memutakhirkan cara ini juga dapat membuat menggunakan permata distro lebih rumit - sekali lagi, saya bukan pengguna ruby, jadi kemungkinan ini saya tidak bisa katakan lagi. Mungkin menginstal modul ruby ​​menggunakan sistem manajemen paket itu sendiri dan tidak aptakan menghindarinya. Meskipun apt mungkin berakhir ingin menginstal beberapa kadang-kadang sebagai dependensi, mereka tidak harus diutamakan ketika digunakan.

Untuk beberapa hal, menggunakan gembukan akan mengharuskan Anda apt install -devpaket untuk hal-hal yang dikompilasi dengan modul, dan mungkin ada sejumlah kecil dari mereka yang tidak akan terbang.

Debian (dan karenanya Raspbian) memiliki kebijakan konservatif tentang versi, yang berarti mereka lebih memilih untuk menjauh dari tepi pendarahan di cabang stabil (saat ini, jessie), tetapi juga mempertahankan cabang "tidak stabil / pengujian" yang cukup stabil (peregangan) - atau sekali itu setelah itu telah bermain untuk sementara waktu, yang sekarang.

Jadi rekomendasi saya adalah untuk melakukannya. Anda sekarang sadar akan peringatan, dan tentu saja Anda harus tetap menyimpan data penting Anda, jadi mungkin tidak banyak yang berisiko.

goldilocks
sumber
terima kasih tapi saya tidak melihat sources.list di /etc/apt/sources.list.d, hanya harus raspi.list. Apakah maksud Anda saya perlu membuat file baru?
Trevor
1
Maaf, itu seharusnya /etc/apt/sources.list[diperbaiki di atas]. Saya tidak yakin apa relevansi menggunakan satu vs yang lain (jika ada) tetapi sources.listpasti berfungsi.
goldilocks
ok man, ini bekerja dengan baik.
Trevor
4

Menginstal Ruby pada RPi3 dengan Raspbian Stretch (9.4)


Ada dua cara untuk menginstal ruby ​​di RPi:

  1. Menginstal ruby2.3paket APT.
  2. Menggunakan metode pemasangan RVM resmi.

(1) Menginstal dengan APT

sudo apt-get install ruby2.3

Ini juga akan menginstal dependensi tambahan:

libruby2.3 rake ruby ruby-did-you-mean ruby-minitest ruby-net-telnet
ruby-power-assert ruby-test-unit ruby2.3 rubygems-integration

Namun, seperti diketahui, pengelola distribusi Raspbian suka menahan rilis versi, sehingga paket ini kemungkinan besar sudah usang, dibandingkan dengan apa yang tersedia. Untuk mendapatkan versi terbaru (atau bahkan pengembang), gunakan metode RVM di bawah ini.


(2) Menginstal dengan RVM

Apa itu RVM?

The Ruby Versi Manajer ( RVM ) adalah alat baris perintah yang memungkinkan Anda untuk dengan mudah menginstal, mengelola, dan bekerja dengan beberapa lingkungan ruby dari juru ke set permata.

Cara yang benar untuk menginstal Ruby pada RPi Anda adalah dengan mengikuti instruksi dari salah satu lokasi ini:

  1. The rvm.io situs
  2. The RVM GitHub situs

Either way, Anda diminta untuk menjalankan skrip langsung dari output respon curl , seperti ini.
( Jangan gunakan sudo! )

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

Namun, ini umumnya tidak disarankan, karena alasan keamanan yang jelas, karena Anda tidak tahu apa yang sedang terjadi atau sedang terjadi!

Jadi alih-alih lakukan hal berikut.

cd ~/Downloads/
\curl -sSL https://get.rvm.io -o rvm-installer
# ^^ That actually resolve to:
# curl -sSL https://raw.githubusercontent.com/rvm/rvm/master/binscripts/rvm-installer -o rvm-installer

chmod 755 rvm-installer
./rvm-installer

Downloading https://github.com/rvm/rvm/archive/master.tar.gz
Installing RVM to /home/pi/.rvm/
    Adding rvm PATH line to /home/pi/.profile /home/pi/.mkshrc /home/pi/.bashrc /home/pi/.zshrc.
    Adding rvm loading line to /home/pi/.profile /home/pi/.bash_profile /home/pi/.zlogin.
Installation of RVM in /home/pi/.rvm/ is almost complete:

  * To start using RVM you need to run `source /home/pi/.rvm/scripts/rvm`
    in all your open shell windows, in rare cases you need to reopen all shell windows.

. /home/pi/.rvm/scripts/rvm
rvm list

# No rvm rubies installed yet. Try 'rvm help install'.

rvm list known

# MRI Rubies
[ruby-]1.8.6[-p420]
[ruby-]1.8.7[-head] # security released on head
[ruby-]1.9.1[-p431]
[ruby-]1.9.2[-p330]
[ruby-]1.9.3[-p551]
[ruby-]2.0.0[-p648]
[ruby-]2.1[.10]
[ruby-]2.2[.10]
[ruby-]2.3[.7]
[ruby-]2.4[.4]
[ruby-]2.5[.1]
[ruby-]2.6[.0-preview1]
ruby-head
...

Sayangnya rvm-installer helptidak menunjukkan salah satu yang paling berguna tersembunyi pilihan: rvm-installer stable --ruby.

Juga, seperti disebutkan, ketika Anda menjalankan rvm-installer , file-file berikut ini dimodifikasi untuk menambahkan beberapa hal terkait rvm baru.

~/.profile
~/.mkshrc
~/.zshrc
~/.bash_profile
~/.zlogin
~/.rvm/scripts/rvm

Jika Anda tidak suka ini, pastikan untuk meneruskan --ignore-dotfilesopsi ke rvm-installer . Jika Anda melakukannya, Anda harus melakukannya secara manual:

echo "source $HOME/.rvm/scripts/rvm" >> ~/.bash_profile

Selanjutnya, kami memeriksa versi stabil Ruby yang sebenarnya disarankan:
https://www.ruby-lang.org/en/downloads/

rvm install ruby-2.5.1 --binary         # this binary doesn't exist!
date; time rvm install ruby-2.5.1 -j 4  # we compile with 4 threads, 
                                        # this take ~XX min on a RPi3 

Setelah ini selesai, saya juga dapat menyelesaikan jawaban ini ...

Intinya di sini, adalah yang rvmtampak jauh lebih ramah pengguna, begitu binari telah dibuat. Mengapa ini belum tersedia secara luas untuk RPi3, tampaknya cukup gila.

not2qubit
sumber