2010-07-22 24 views
13

$: /Users/dev/.rvm/gems/[email protected]/gems/sqlite3-ruby-1.3.1/lib/sqlite3/sqlite3_native.bundle: [BUG] Segmentation fault ruby ​​1.8.7 (2009-06-12 patchlevel 174) [universale-darwin10.0]rvm conflit con sqlite3

Abort trap 

E 'sembra che ruby ​​non è la versione corretta (1.8.7), ma:

$: ruby - v 
$: ruby 1.9.2dev (2010-07-15 revision 28653) [x86_64-darwin10.4.0] 



$: gem list 

*** LOCAL GEMS *** 

abstract (1.0.0) 
actionmailer (3.0.0.beta4, 3.0.0.beta3) 
actionpack (3.0.0.beta4, 3.0.0.beta3) 
activemodel (3.0.0.beta4, 3.0.0.beta3) 
activerecord (3.0.0.beta4, 3.0.0.beta3) 
activeresource (3.0.0.beta4, 3.0.0.beta3) 
activesupport (3.0.0.beta4, 3.0.0.beta3) 
arel (0.4.0, 0.3.3) 
builder (2.1.2) 
bundler (0.9.26) 
erubis (2.6.6) 
i18n (0.4.1, 0.3.7) 
mail (2.2.5) 
memcache-client (1.8.5) 
mime-types (1.16) 
polyglot (0.3.1) 
rack (1.1.0) 
rack-mount (0.6.9) 
rack-test (0.5.4) 
rails (3.0.0.beta4, 3.0.0.beta3) 
railties (3.0.0.beta4, 3.0.0.beta3) 
rake (0.8.7) 
rdoc (2.5.9) 
sqlite3-ruby (1.3.1) 
text-format (1.0.0) 
text-hyphen (1.0.0) 
thor (0.13.8) 
treetop (1.4.8) 
tzinfo (0.3.22) 
will_paginate (3.0.pre) 

maggiori informazioni:

$: ~ dev$ ruby -v 
ruby 1.9.2dev (2010-07-15 revision 28653) [x86_64-darwin10.4.0] 
$ :~ dev$ rails -v 



/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems.rb:827:in `report_activate_error': Could not find RubyGem rails (>= 0) (Gem::LoadError) 
from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems.rb:261:in `activate' 
from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems.rb:68:in `gem' 
from /usr/bin/rails:18 

Qualche idea?

Grazie mille :)

risposta

3

Non so come questo è successo nel tuo caso, ma mi sembra che Rails ha provato a correre con il sistema installato di Ruby, ma sta caricando gemme da un 1.9.2 percorso di carico. Molto strano.

si vede la versione corretta di Ruby nella shell (RVM ha la precedenza nel percorso locale) ma non è questo a quanto pare ciò che Rails è in fase di avvio con.

controllare per vedere come si stanno iniziando Rails e che non si dispone di percorsi o collegamenti o alias incasinato tra le versioni di Ruby

6

Stesso problema per me su Snow Leopard; anche se in rvm [email protected], posso vedere il numero di versione corretto delle guide.

devo usare seguente comando per utilizzare le rotaie di comando:

rubywhich railsg scaffold User name:string bio:text

Qualsiasi soluzione?

ho finalmente trovato la ragione. Sembra che gem install rails non sia riuscito a installare il binario corretto per i binari in rvm. Ed è ancora rails fa riferimento /usr/bin/rails, che hanno un punto di #! linea del sistema rubino.

Lo si può vedere con:

head -1 `which rails` 

che restituisce:

#!/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby 

Change che a:

#!/usr/bin/env ruby 

risolverà il problema. Non so se questo problema interessa altri script eseguibili gemma installa, ma perché gioiello si installa le rotaie per proprio percorso di bin RVM è un mistero per me. Ad ogni modo, questa soluzione alternativa fa lo sporco per me.

+0

Ho avuto lo stesso problema. Ho creato l'applicazione rails utilizzando le gemme di sistema e ruby, quindi ho inserito l'app per rails e creato un .rvmrc. Credo che questo sia il modo in cui il mio problema è sorto. –

+0

Questo problema risolveva il problema dalla riga di comando. Tuttavia, ho dovuto riavviare textmate per consentire il recupero delle modifiche da lì. – johnnygoodman

+0

Questo è esattamente quello che sta succedendo. Ho due versioni di binari sul mio server: quella fornita da Apple e l'ultima versione fornita dal team di Homebrew. – Sean

22

avuto lo stesso problema dopo essersi trasferito a 1.9.2p0, ma il riavvio della console su Snow Leopard ha fatto il trucco. Sembra che rvm potrebbe essere diventato confuso.

+0

Grazie per questo. –

+0

riavvio del terminale funziona anche per me, grazie – denisjacquemin

+0

Aveva questo problema quando si aggiungevano e rimuovendo i file .rmvc, riavvio della console funzionante, grazie! – bartolsthoorn

0

Stesso problema, dopo una serie di aggiornamenti (RVM a 1.5.2 e Ruby a 1,9.2-p180)

Il riavvio della console non ha funzionato per me, l'aggiornamento alle guide 3.0.6 ha cambiato l'errore in un errore seg di mysql2 invece di sqlite3, la reinstallazione di mysql2 ha fatto il trucco per me.

saluti Michael

5

Ho avuto lo stesso problema quando si utilizza ree-1.8.7-2011.03. (Rubino impresa Edition)

ho disinstallato le gemme sqlite3 poi mi sono imbattuto:

gem install sqlite3 

e ha funzionato. Si noti che la gemma sqlite3-ruby ora consiglia di utilizzare 'sqlite3' ora.

+0

Ho appena avuto questo problema e questo lo ha risolto. – xaxxon

0

ho incontrato questo errore esatto in zsh e MacVim, e alla fine rintracciato di nuovo a this RVM issue. La soluzione era quella di spostare l'approvvigionamento RVM che avevo in .zshrc-.zshenv. Ha funzionato immediatamente. Pubblicando semplicemente per caso qualcuno si imbatte in questo modo come ho fatto io.

0

C'è un problema noto con zsh, rvm e vim.

La soluzione più recente è quello di impostare la shell a sh nel vostro .vimrc

set shell=sh 

This blog ha tutte le soluzioni elencate

1

Potrebbe essere necessario eseguire

rvm reload