installazione di gemme che utilizzano rvm
Domanda
Quando si tenta di installare gemme usando rvm ottengo questo errore
$ rvm gem install sproutcore
ERROR: While executing gem ... (Errno::EACCES)
Permission denied - /home/tee/.gem/specs
, ma si dice sul sito rvm che non si dovrebbe usare sudo quindi non sono sicuro che cosa è sbagliato con il mio setup
Quando digito $ GEM_HOME dimostra che la directory punta alla rvm dir
$GEM_HOME
bash: /home/tee/.rvm/gems/ruby-1.8.7-p302: is a directory
Tutte le idee che sto facendo male?
Soluzione
C'è un problema di permessi con la cartella .gem. Assicurarsi che il proprietario è l'utente corrente.
sudo chown -R tee /home/tee/.gem
Se non funziona, rimuovere la cartella .gem. Viene creato automaticamente quando si aggiorna la cache di gemma.
Inoltre, assicuratevi di mai usato sudo con RVM.
Altri suggerimenti
ho avuto lo stesso problema. Ho rifatto il comando
utente $ source ~ / .rvm / scripts / rvm
da una nuova finestra di terminale (come suggerito durante l'installazione di rvm e forse trascurato quando stavo installando RVM) e le cose sembravano andare bene, dopo che
o semplicemente
$ rvm <ruby_version> $ gem install sproutcode
Questo dovrebbe sicuramente lavoro.
la sua probabilmente non è il modo corretto di fare le cose, ma ho trovato che l'uso rvmsudo risolto il problema, ad esempio
rvmsudo gem install rails
ho avuto lo stesso problema, perché il RVM è stato installato a livello globale, in / usr / / rvm locale, quindi non aveva il permesso di installare le gemme nella directory ruby.
La soluzione è quella di utilizzare l'installazione utente singolo, questo installerà la vostra rvm in casa directtory del vostro utente (~ / .rvm) in modo che avrà tutte le autorizzazioni necessarie per installare i gemsets e gemme.
Se volete sapere il soggetto meglio leggere https://rvm.io/rvm/install . Vedrete che Single User install è il raccomandato.