Installato Vagrant tramite sudo apt-get install vagrant , e ogni volta che provo a eseguire qualche comando vagrant, come vagrant init precise32 http://files.vagrantup.com/precise32.box Ottengo il seguente errore:
/home/novito/.rvm/rubies/ruby-2.0.0-p195/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:45:in `require': cannot load such file -- log4r (LoadError)
from /home/novito/.rvm/rubies/ruby-2.0.0-p195/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:45:in `require'
from /usr/bin/vagrant:2:in `<main>'
Non sono sicuro del motivo per cui rvm viene coinvolto qui, ma vabbè, spero che voi ragazzi possiate guidarmi su come risolverlo.
Risposta accettata:
Quando hai installato Vagrant usando apt-get avrebbe installato tutte le sue dipendenze richieste per la versione standard di Ruby con pacchetto Ubuntu. Ma il tuo messaggio di errore lo indica quando esegui vagrant sta tentando di utilizzare una versione di Ruby (e le sue gemme) gestita da RVM piuttosto che la versione di sistema e nella tua versione di Ruby manca almeno una delle sue dipendenze, log4r .
Penso che tu abbia alcune opzioni:
- Ripristina l'utilizzo della versione di sistema (Ubuntu standard) di Ruby eseguendo qualcosa come
rvm use system --defaultper ripristinare RVM per impostazione predefinita e modificare le versioni di Ruby solo quando necessario. - Torna alla versione di sistema solo quando esegui Vagrant, quindi esegui
rvm use systemprima di eseguirevagrantnella stessa shell. - Identifica tutte le Gemme Ruby da cui dipende Vagrant e installale manualmente nella tua installazione Ruby gestita da RVM. Questo sarebbe un approccio complicato, però. In passato era possibile installare Vagrant stesso come Ruby Gem, quindi avresti potuto installarlo nella tua installazione Ruby gestita da RVM, ma non è più supportato.
Consulta la documentazione sulle opzioni dei comandi RVM per maggiori dettagli sul controllo della versione di Ruby in uso.