Como instalar o Ruby> = 2.1.9?

9

Eu tentei, sudo apt-get install rubymas ele instalará o Ruby 2.1.5.

Como instalar a versão> = 2.1.9?

Trevor
fonte

Respostas:

6

Existe um pacote ruby ​​2.3 nos repositórios Raspbian, mas como apt show rubyem um sistema "jessie" mostra 2.1, presumo que seja um pacote "stretch" - isto é, parte do ramo atual de testes / instáveis.

No entanto, eu corri lddnele e libruby2.3eles não possuem requisitos que não façam parte de jessie, portanto você pode instalá-los desta maneira:

  1. Edite /etc/apt/sources.liste adicione uma linha:

    deb http://archive.raspbian.org/raspbian/ stretch main
  2. Corra apt get update; pode demorar um pouco.

Então tente apt install ruby2.3. Isso deve funcionar, mas existem potencialmente rubis 2.3 da distro que exigiriam uma atualização completa do sistema para serem ampliados. Eu tenho um pi que fiz isso há meses e está bom, mas eu não uso o ruby ​​e só o uso para coisas específicas, portanto, lembre-se de que uma atualização completa dos testes pode resultar (mas provavelmente não o fará) em complicações.

Atualizar dessa maneira também pode tornar o uso de gemas de distribuição mais complicado - mais uma vez, eu não sou um usuário de ruby, então a probabilidade disso não posso dizer mais nada. Provavelmente a instalação de módulos ruby ​​usando seu próprio sistema de gerenciamento de pacotes e não aptcontornaria isso. Embora o apt possa acabar instalando alguns ocasionalmente como dependências, eles não devem ter precedência quando usados.

Para algumas coisas, o uso de pacotes gemexigirá apt install -devpacotes para os quais os módulos são compilados, e pode haver um pequeno número daqueles que simplesmente não serão executados.

O Debian (e, portanto, o Raspbian) tem uma política conservadora sobre o versionamento, o que significa que eles preferem ficar longe do limite do ramo estável (atualmente, jessie), mas também mantêm um ramo "instável / de teste" bastante estável (alongamento) - ou é uma vez que está em jogo há um tempo, o que tem agora.

Portanto, minha recomendação é seguir em frente. Agora você está ciente das advertências e, é claro, deve manter o backup de seus dados importantes, portanto, provavelmente não há muito risco.

Cachinhos Dourados
fonte
obrigado, mas eu não vejo sources.list em /etc/apt/sources.list.d, apenas tem raspi.list. Você quer dizer que eu preciso criar um novo arquivo?
Trevor
11
Desculpe, isso deveria ter sido /etc/apt/sources.list[corrigido acima]. Não sei ao certo qual é a relevância de usar um vs. o outro (se houver), mas sources.listdefinitivamente funciona.
goldilocks
ok cara, funciona bem.
Trevor
4

Instalando o Ruby no RPi3 com Raspbian Stretch (9.4)


Existem duas maneiras de instalar o ruby ​​no RPi:

  1. Instalando o ruby2.3pacote APT.
  2. Usando o método de instalação oficial do RVM.

(1) Instalando com o APT

sudo apt-get install ruby2.3

Isso também instalará as dependências adicionais:

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

No entanto, como é sabido, os mantenedores da distribuição Raspbian gostam de se segurar nas versões lançadas, portanto esse pacote provavelmente já está desatualizado, comparado ao que está disponível. Para obter a versão mais recente (ou até mesmo desenvolvedor), use o método RVM abaixo.


(2) Instalando com o RVM

O que é RVM?

O Ruby Version Manager ( RVM ) é uma ferramenta de linha de comando que permite instalar, gerenciar e trabalhar facilmente com vários ambientes ruby, de intérpretes a conjuntos de gemas.

A maneira correta de instalar o Ruby no seu RPi é seguir as instruções de um destes locais:

  1. O site rvm.io
  2. O site rvm GitHub

De qualquer forma, você é solicitado a executar o script diretamente da saída da resposta de ondulação , assim.
( Não use sudo! )

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

No entanto, isso geralmente não é recomendado, por razões óbvias de segurança, pois você não tem idéia do que está acontecendo ou acontecendo!

Então, faça o seguinte.

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
...

Infelizmente rvm-installer helpnão mostra um dos mais útil escondido opção: rvm-installer stable --ruby.

Além disso, como observado, quando você executou o rvm-installer , os seguintes arquivos foram modificados para adicionar novos itens relacionados ao rvm.

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

Se você não gostar disso, certifique-se de passar a --ignore-dotfilesopção para o rvm-installer . Se você fizer isso, precisará fazer isso manualmente:

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

Em seguida, verificamos qual versão estável do Ruby é realmente recomendada:
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 

Depois que isso terminar, também posso concluir esta resposta ...

O ponto aqui é que rvmparece muito mais amigável, uma vez que os binários foram criados. Por que eles ainda não estão amplamente disponíveis para o RPi3, parecem bastante loucos.

not2qubit
fonte