2012-10-23 29 views
2
# gem which sqlite3 
/usr/lib64/ruby/gems/1.8/gems/sqlite3-1.3.6/lib/sqlite3.rb 
# irb 
irb(main):001:0> require 'sqlite3' 
LoadError: no such file to load -- sqlite3 
     from (irb):1:in `require' 
     from (irb):1 
     from :0 

我是新來的紅寶石,但有經驗的Perl。所以我懷疑它的一個庫問題,sqlite3安裝在「gem」知道的位置,但「irb」和「ruby」不知道。任何人都可以提出一種方法我可以解決這個問題?謝謝!需要'sqlite3'失敗後寶石安裝sqlite3

+0

只需確認,你是否安裝了sqlite3(二進制文件,不是寶石)?如果你使用的是Linux發行版,你可以使用'sudo-apt get install sqlite3'之類的東西。 – sunnyrjuneja

+1

我能得到sqlite3的加載,但只有在我卸載我從我的YUM回購安裝Ruby和安裝來自源紅寶石1.9,然後通過安裝該得到安裝使用Ruby 1.9的寶石sqlite3的。 –

+0

偉大的聽到的作品!如果我可以推薦考慮使用rvm來管理你的紅寶石。此外,在2天內它應該允許你回答你的問題並將其標記爲答案。這樣的方式的問題將顯示爲關閉,人們對未來可能從你的經驗中受益。 – sunnyrjuneja

回答

0

問題不是因爲二進制文件丟失。如果sqlite3的二進制文件丟失,gem install sqlite3將失敗,所以該gem將不會被安裝。並且不會在gem list命令中列出。

我從終端給出的輸出中讀到的是,您正在使用紅寶石1.8。*,在這些版本中,您首先需要require 'rubygems'

問題後來解決了,因爲,您將紅寶石升級到1.9。*,您可以立即在不需要使用require 'rubygems'的情況下要求您的寶石。

總是推薦使用rvm ruby​​。有關rvm的安裝和使用的詳細信息可以在here找到。