Réponses:
Il y a un paquet ruby 2.3 dans les dépôts Raspbian, mais comme apt show ruby
sur un système "jessie" affiche 2.1, je suppose que c'est un paquet "stretch" - c'est-à-dire une partie de la branche testing / unstable actuelle.
Cependant, j'ai couru ldd
dessus et libruby2.3
et eux seuls n'ont pas d'exigences qui ne font pas partie de Jessie, vous pouvez donc les installer de cette façon:
Modifiez /etc/apt/sources.list
et ajoutez une ligne:
deb http://archive.raspbian.org/raspbian/ stretch main
Run apt get update
; cela peut prendre un certain temps.
Alors essayez apt install ruby2.3
. Cela devrait fonctionner mais il y a potentiellement des gemmes ruby 2.3 de la distribution qui nécessiteraient une mise à niveau complète du système pour s'étirer. J'ai un pi que j'ai fait il y a des mois et ça s'est bien passé, mais je n'utilise pas ruby et n'utilise ce pi que pour des choses particulières, alors gardez à l'esprit qu'une mise à niveau complète des tests peut (mais probablement ne le sera pas) dans les complications.
La mise à niveau de cette manière peut également rendre l'utilisation des gemmes de distribution plus compliquée - encore une fois, je ne suis pas un utilisateur de rubis, donc je ne peux pas en dire plus sur la probabilité de cela. Installer probablement des modules ruby en utilisant son propre système de gestion de paquets et ne apt
contournerait pas cela. Bien qu'apt puisse finir par vouloir en installer de temps en temps comme dépendances, ils ne devraient pas avoir la priorité lorsqu'ils sont utilisés.
Pour certaines choses, utiliser à la gem
place nécessitera des apt install
-dev
packages pour les éléments sur lesquels les modules sont compilés, et il peut y en avoir un petit nombre qui ne voleront tout simplement pas.
Debian (et donc Raspbian) a une politique conservatrice sur la gestion des versions, ce qui signifie qu'ils préfèrent rester à l'écart du bord de saignée dans la branche stable (actuellement, Jessie), mais également maintenir une branche "instable / testing" assez stable (stretch) - ou c'est une fois qu'il est une fois qu'il a été en jeu pendant un certain temps, ce qu'il a maintenant.
Donc, ma recommandation est d'y aller. Vous êtes maintenant au courant des mises en garde, et bien sûr, vous devez de toute façon conserver vos données importantes sauvegardées, donc il n'y a probablement pas beaucoup de risques.
/etc/apt/sources.list
[corrigé ci-dessus]. Je ne sais pas quelle est la pertinence de l'utilisation de l'un par rapport à l'autre (le cas échéant), mais sources.list
fonctionne certainement.
Installation de Ruby sur RPi3 avec Raspbian Stretch (9.4)
Il existe deux façons d'installer ruby sur le RPi:
ruby2.3
package APT.sudo apt-get install ruby2.3
Cela installera également les dépendances supplémentaires:
libruby2.3 rake ruby ruby-did-you-mean ruby-minitest ruby-net-telnet
ruby-power-assert ruby-test-unit ruby2.3 rubygems-integration
Cependant, comme cela est bien connu, les responsables de la distribution Raspbian aiment se retenir sur les versions, donc ce package est probablement déjà obsolète, par rapport à ce qui est disponible. Pour obtenir la dernière version (ou même la version développeur), utilisez la méthode RVM ci-dessous.
Qu'est-ce que RVM?
Le Ruby Version Manager ( RVM ) est un outil en ligne de commande qui vous permet d'installer, de gérer et de travailler facilement avec plusieurs environnements Ruby, des interprètes aux ensembles de gemmes.
La bonne façon d'installer Ruby sur votre RPi est de suivre les instructions de l'un de ces emplacements:
Dans les deux cas, vous êtes invité à exécuter le script directement à partir de la sortie de réponse curl , comme ceci.
( N'utilisez pas sudo! )
\curl -sSL https://get.rvm.io | bash -s stable --ruby
Cependant, ceci n'est généralement pas recommandé, pour des raisons évidentes de sécurité, car vous n'avez aucune idée de ce qui se passe ou de ce qui se passe!
Faites donc ce qui suit.
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
...
Malheureusement , rvm-installer help
ne montre pas l' un des plus utiles cachée options: rvm-installer stable --ruby
.
En outre, comme indiqué, lorsque vous avez exécuté l' installateur rvm , les fichiers suivants ont été modifiés pour ajouter de nouveaux éléments liés à rvm.
~/.profile
~/.mkshrc
~/.zshrc
~/.bash_profile
~/.zlogin
~/.rvm/scripts/rvm
Si vous n'aimez pas cela, assurez-vous de passer l' --ignore-dotfiles
option à l' installateur rvm . Si vous le faites, vous devrez le faire manuellement:
echo "source $HOME/.rvm/scripts/rvm" >> ~/.bash_profile
Ensuite, nous vérifions quelle version stable de Ruby est réellement recommandée:
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
Une fois cela terminé, je peux également compléter cette réponse ...
Le point ici, c'est que cela rvm
semble beaucoup plus convivial, une fois les binaires créés. Pourquoi ceux-ci ne sont pas déjà largement disponibles pour le RPi3, semblent assez fous.
sources.list
dans/etc/apt/sources.list.d
, juste avoirraspi.list
. Voulez-vous dire que je dois créer un nouveau fichier?