2010-03-06 5 views
12

Ubuntu 9.10Rubino Gemme restituisce "comando non trovato"

newgem Appena installato

gem install newgem 

e quando provo

newgem new_project 

ottengo

[email protected]:~$ newgem newproject 
newgem: command not found 

Ive controllato il mio percorso via echo $ PATH

[email protected]:~$ echo $PATH 
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/home/adam/.gem 

e il mio gioiello ambiente

[email protected]:~$ gem environment 
RubyGems Environment: 
    - RUBYGEMS VERSION: 1.3.6 
    - RUBY VERSION: 1.8.7 (2009-06-12 patchlevel 174) [x86_64-linux] 
    - INSTALLATION DIRECTORY: /usr/lib/ruby/gems/1.8 
    - RUBY EXECUTABLE: /usr/bin/ruby1.8 
    - EXECUTABLE DIRECTORY: /usr/bin 
    - RUBYGEMS PLATFORMS: 
    - ruby 
    - x86_64-linux 
    - GEM PATHS: 
    - /usr/lib/ruby/gems/1.8 
    - /home/adam/.gem/ruby/1.8 
    - GEM CONFIGURATION: 
    - :update_sources => true 
    - :verbose => true 
    - :benchmark => false 
    - :backtrace => false 
    - :bulk_threshold => 1000 
    - REMOTE SOURCES: 
    - http://rubygems.org/ 

Im non calda con i percorsi, ecc, ma tutte le directory gemma di cui sopra sono sul percorso in modo come mai cant trovare il comando?

risposta

26

La variabile $PATH deve includere il percorso esatto della directory bin di Ruby. L'aggiunta di una directory a PATH non include le sue sottocartelle. Provate ad aggiungere la directory bin via:

export PATH=$PATH:/home/adam/.gem/ruby/1.8/bin 

o se è stato installato il gioiello con sudo:

export PATH=$PATH:/usr/lib/ruby/gems/1.8/bin 

Si potrebbe desiderare di aggiungere questo al file .bashrc, in modo che non c'è bisogno di impostare questo manualmente ogni volta che apri una nuova bash.

+0

ahh presumevo che se avessi aggiunto /adam/.gem/ al percorso, le sue sottodirectory avrebbero cercato automaticamente anche. stupido da parte mia grazie per quello – robodisco

+5

Nota che su alcune versioni di Ubuntu, il percorso del raccoglitore gemma 1.8 può essere trovato in */var/lib/gems/1.8/bin *. Questo comando è utile anche per aggiungere il percorso sudo al tuo profilo bash * echo -e '\ nexport PATH = $ PATH: /var/lib/gems/1.8/bin' >> ~/.bashrc * – jdev

+2

Puoi trovare l'esatto patch eseguendo "ambiente gem". L'DIRECTORY ESECUTIVO è la linea che ti serve. –

1

Se si utilizza RVM (la maggior parte lo fanno), quindi si prenderà cura di questo per voi. In effetti, metterlo direttamente nel tuo percorso potrebbe entrare in conflitto. Devi impostare un rubino da usare però. Esegui uno di questi sulla riga di comando.

rvm use 1.9.3 

o

rvm use --default 1.9.3 
0

(Basta rubare il commento di @ John Franklin)

$ gem environment 

vi dirà la EXECUTABLE DIRECTORY. Quindi inserisci qualsiasi valore nel tuo PATH in questo modo (nel tuo .bashrc o in un altro file di configurazione della shell).

export PATH="$PATH:/path/to/bin" 

Ricarica la shell e dovresti essere in grado di utilizzare la gemma installata.