Eu instalo um pacote ruby.
$ sudo gem install pdfbeads
ERROR: Error installing pdfbeads:
nokogiri requires Ruby version >= 1.9.2.
diz que precisa da versão ruby maior que 1.9.1.
Meu ruby é 1.8.7.
$ which ruby
/usr/bin/ruby
$ ruby --version
ruby 1.8.7 (2011-06-30 patchlevel 352) [i686-linux]
$ gem --version
1.8.15
Eu tenho o ruby 1.9.1 e 1.9.3.
$ whereis ruby1.9.1
ruby1.9: /usr/bin/ruby1.9.1 /usr/bin/ruby1.9.3 /usr/bin/X11/ruby1.9.1 /usr/bin/X11/ruby1.9.3
mas 1.9.3 está vinculado a 1.9.1.
$ ls /usr/bin/ruby* -l
lrwxrwxrwx 1 root root 22 Jul 10 02:33 /usr/bin/ruby -> /etc/alternatives/ruby
-rwxr-xr-x 1 root root 5504 Nov 26 2013 /usr/bin/ruby1.8
-rwxr-xr-x 1 root root 5552 Nov 26 2013 /usr/bin/ruby1.9.1
lrwxrwxrwx 1 root root 9 Nov 26 2013 /usr/bin/ruby1.9.3 -> ruby1.9.1
Ele diz que é 1.9.3 no entanto:
$ /usr/bin/ruby1.9.3 --version
ruby 1.9.3p0 (2011-10-30 revision 33570) [i686-linux]
Eu mudo o link para ruby1.9.3 de qualquer maneira
$ ls -l /usr/bin/ruby*
lrwxrwxrwx 1 root root 9 Aug 20 21:16 /usr/bin/ruby -> ruby1.9.3
-rwxr-xr-x 1 root root 5504 Nov 26 2013 /usr/bin/ruby1.8
-rwxr-xr-x 1 root root 5552 Nov 26 2013 /usr/bin/ruby1.9.1
lrwxrwxrwx 1 root root 9 Nov 26 2013 /usr/bin/ruby1.9.3 -> ruby1.9.1
A instalação ainda diz que precisa de ruby> = 1.9.2
$ sudo gem install pdfbeads
ERROR: Error installing pdfbeads:
nokogiri requires Ruby version >= 1.9.2.
$ gem --version
1.8.15
$ ruby --version
ruby 1.9.3p0 (2011-10-30 revision 33570) [i686-linux]
Eu tenho ruby1.9.3 ou apenas ruby1.9.1?
Como posso sudo gem install pdfbeads
usar o ruby 1.9.3?
Atualizar:
Agora segui o caminho da instalação do ruby 2.1.0 pelo RVM, adicionei o caminho do rvm
meu PATH
. Eu instalei com sucesso o ruby2.1.0 pelo
$ rvm install 2.1.0
e tornou padrão
$ rvm use 2.1.0
$ ruby -v
ruby 2.1.0p0 (2013-12-25 revision 44422) [i686-linux]
$ which ruby
/home/tim/.rvm/rubies/ruby-2.1.0/bin/ruby
Agora, voltei a instalar o pacote pdfbeads
, mas sem sudo
(porque eu pensei que tinha instalado o ruby 2.1.0 na minha conta, não no root, e a instalação do pacote requer a versão mais recente do ruby)
$ gem install pdfbeads
ERROR: While executing gem ... (Gem::FilePermissionError)
You don't have write permissions into the /var/lib/gems/1.8 directory.
Então eu acho que tenho que usar sudo
. Mas ainda recebo o erro original,
$ sudo gem install pdfbeads
ERROR: Error installing pdfbeads:
nokogiri requires Ruby version >= 1.9.2.
Eu acho que é porque sudo
, abaixo , o usuário é root
, que ainda tem a versão mais antiga ruby1.8.7 como padrão. Então, eu me pergunto o que posso fazer agora?
rvm
caminho está na raizPATH
?rvm
está em$PATH
. Não sei ao certo o que você quer dizer com "raizPATH
". existem outrosPATH
?PATH
quando você é root.PATH=$PATH:/home/tim/.rvm/bin
? Vou ter que voltar para minha conta e instalarpdfbeads
.Respostas:
Você pode considerar o uso de um gerenciador de pacotes ruby como rvm ou rbenv
Você pode instalar rubis diferentes e alternar entre eles facilmente.
Você também pode tentar experimentar a versão 2.0 ou superior
Saída de amostra do rvm:
Obtenha o rvm em http://rvm.io/
Instale com seu famoso liner 1:
$
\curl -sSL https://get.rvm.io | bash -s stable
fonte
Instale o RVM e use o seguinte:
fonte