Rubino non riesce a trovare le librerie necessarie, anche se è installato gioiello
Domanda
ho passato letteralmente giorni cercando di installare Ruby 1.9.2 e farlo funzionare con le gemme: - / Alla fine ho rinunciato sul mio Mac OSX 10.6 macchina e sotto è lo stato attuale sulla mia macchina Ubuntu. Qualche consiglio sarebbe molto apprezzato!
# ruby test.rb
<internal:lib/rubygems/custom_require>:29:in `require': no such file to load -- mongo (LoadError)
from <internal:lib/rubygems/custom_require>:29:in `require'
from test.rb:1:in `<main>'
# cat test.rb
require 'mongo'
db = Mongo::Connection.new.db("mydb")
# gem which mongo
/usr/local/rvm/gems/ruby-1.9.2-p0/gems/mongo-1.1.2/lib/mongo.rb
# cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=10.10
DISTRIB_CODENAME=maverick
DISTRIB_DESCRIPTION="Ubuntu 10.10"
In base a questa pagina: http://docs.rubygems.org/read/chapter/19 I link simbolico che rubino stavo usando per abbinare quello che gemma sta usando:
# which ruby
/usr/local/rvm/bin/ruby
# ls -l `which ruby`
lrwxrwxrwx 1 root root 44 2010-11-17 13:25 /usr/local/rvm/bin/ruby -> /usr/local/rvm/rubies/ruby-1.9.2-p0/bin/ruby
# gem env | grep 'RUBY EXECUTABLE'
- RUBY EXECUTABLE: /usr/local/rvm/rubies/ruby-1.9.2-p0/bin/ruby
# which gem
/usr/local/rvm/bin/gem
# gem -v
1.3.7
# ruby -v
ruby 1.9.2p0 (2010-08-18 revision 29036) [i686-linux]
Soluzione
Perché è "rvm" la visualizzazione nel tuo percorso /usr/local/rvm/
? Hai fatto un sistema a livello di installazione, come amministratore di sistema utilizzando somministrazione sistema Rubino vasta per più utenti?
Si è aggiunta al vostro [[ -s '/usr/local/lib/rvm' ]] && source '/usr/local/lib/rvm'
~/.bashrc
, ~/.bash_profile
o ~/.profile
(a seconda di quale si è configurato)?
Per il normale, l'uso quotidiano, vi consiglio l'installazione di default di RVM: RVM installazione , gemme RVM .
Nota all'auto: acquistare azioni di RVM. E 'troppo freddo.
Altri suggerimenti
Prova a mettere la seguente linea all'inizio
require "rubygems"
Non mi sotto di Ruby 1.8.7, che è pre-installato di default su OS X?
Se è così, una differenza tra 1.9.1 e 1.9.2 è che "."
non fa parte del percorso di $:
più.
mi raccomando che si fa rvm implode
e cancellare l'impostazione corrente. Quindi utilizzare lo script railsready per RVM di installazione e Ruby correttamente per voi su Ubuntu. E 'importante capire che finché non si sa cosa si sta facendo si dovrebbe eseguire lo script come utente. Speranza che aiuta.
Su Linux e OS X, ho sempre dovuto mettere richiedere "RubyGems" in principio. Tuttavia ha sempre funzionato bene anche senza questa linea sulle finestre.