2010-03-16 104 views
0

我正在运行Mac OSX Snow Leopard,这个问题是由最近的train wreck造成的,我在其中更新了没有RVM的ruby。我试图正确安装/运行RVM,但是我无法让它正常工作。Snow Leopard sqlite3-ruby安装问题

我无法安装sqlite3-ruby gem。我收到以下错误错误:安装sqlite3-ruby时出错: 错误:无法构建gem本机扩展。

我该如何解决这个问题?

$ which ruby 
/usr/local/bin/ruby 
$ whereis ruby 
/usr/bin/ruby 
$ which rails 
/usr/local/bin/rails 
$ whereis rails 
/usr/bin/rails 
$ which gem 
/usr/local/bin/gem 
$ whereis gem 
/usr/bin/gem 
$ ruby -v 
ruby 1.8.7 (2008-08-11 patchlevel 72) [i686-darwin10.2.0] 
$ rails -v 
Rails 2.3.5 
$ gem list 

*** LOCAL GEMS *** 

actionmailer (2.3.5) 
actionpack (2.3.5) 
activerecord (2.3.5) 
activeresource (2.3.5) 
activesupport (2.3.5) 
builder (2.1.2) 
bundler (0.9.11) 
columnize (0.3.1) 
erubis (2.6.5) 
fastercsv (1.5.1) 
ffi (0.6.3) 
gbarcode (0.98.16) 
i18n (0.3.5) 
linecache (0.43) 
mail (2.1.3) 
memcache-client (1.8.0) 
prawn (0.8.4) 
prawn-core (0.8.4) 
prawn-layout (0.8.4) 
prawn-security (0.8.4) 
rack (1.1.0, 1.0.1) 
rack-mount (0.6.1) 
rack-test (0.5.3) 
rails (2.3.5) 
rake (0.8.7) 
ruby-debug (0.10.3) 
ruby-debug-base (0.10.3) 
rubygems-update (1.3.6) 
sqlite3 (0.0.8) 
text-format (1.0.0) 
thor (0.13.4) 
tzinfo (0.3.17) 

$ sudo gem install sqlite3-ruby 
Password: 
Building native extensions. This could take a while... 
ERROR: Error installing sqlite3-ruby: 
    ERROR: Failed to build gem native extension. 

/usr/local/bin/ruby extconf.rb 
checking for fdatasync() in -lrt... no 
checking for sqlite3.h... yes 
checking for sqlite3_open() in -lsqlite3... no 
*** extconf.rb failed *** 
Could not create Makefile due to some reason, probably lack of 
necessary libraries and/or headers. Check the mkmf.log file for more 
details. You may need configuration options. 

Provided configuration options: 
    --with-opt-dir 
    --without-opt-dir 
    --with-opt-include 
    --without-opt-include=${opt-dir}/include 
    --with-opt-lib 
    --without-opt-lib=${opt-dir}/lib 
    --with-make-prog 
    --without-make-prog 
    --srcdir=. 
    --curdir 
    --ruby=/usr/local/bin/ruby 
    --with-sqlite3-dir 
    --without-sqlite3-dir 
    --with-sqlite3-include 
    --without-sqlite3-include=${sqlite3-dir}/include 
    --with-sqlite3-lib 
    --without-sqlite3-lib=${sqlite3-dir}/lib 
    --with-rtlib 
    --without-rtlib 
    --with-sqlite3lib 
    --without-sqlite3lib 


Gem files will remain installed in /usr/local/lib/ruby/gems/1.8/gems/sqlite3-ruby-1.2.5 for inspection. 
Results logged to /usr/local/lib/ruby/gems/1.8/gems/sqlite3-ruby-1.2.5/ext/sqlite3_api/gem_make.out 

简介:

export MANPATH=/opt/local/share/man:$MANPATH  
export PATH="/usr/local/bin:/usr/local/sbin:/usr/local/mysql/bin:$PATH" 
if [[ -s /Users/justinz/.rvm/scripts/rvm ]] ; then source /Users/justinz/.rvm/scripts/rvm ; fi 
+0

为了解决这个问题,我卸载了sqlite3 gem,并安装了sqlite3-ruby gem – 2010-04-14 22:41:18

+0

试试这个:http://stackoverflow.com/questions/1373108/snow-leopard-sqlite3-ruby – devth 2010-03-16 04:18:47

+0

他还在1.8上,该链接可能不会有所作为。我确信这是与尚未安装的开发人员工具有关。 – Garrett 2010-03-16 04:21:49

回答

1

卸载sqlite3宝石,然后再试一次 - 我似乎记得,sqlite3和sqlite3-ruby不兼容。否则,将结果文件附加到您的问题,以便我们可以看到编译发生时出了什么问题。

+0

JZ,你有机会检查一下吗? – corprew 2010-03-24 21:29:06

+0

为了纠正这个问题我卸载了sqlite3 gem,并安装了sqlite3-ruby gem – 2010-04-14 22:41:51

+0

卸载后重新安装工程:) – 2012-08-20 10:50:58

0

你需要安装的Xcode。您可以免费下载developer.apple.com

+0

重新安装xcode,那不是问题:(本来是一个简单的修复程序 – 2010-03-16 05:00:42

0

我有几乎相同的错误,没有安装sqlite3 gem。用macports卸载sqlite3(以及依赖关系)。卸载后,sqlite3-ruby安装正常工作。