2011-04-27 192 views
1

当我去安装使用“sudo的包安装”,安装所有的人......它抛出一个错误上的sqlite3:为什么我无法安装sqlite?

Installing sqlite3 (1.3.3) with native extensions /Library/Ruby/Site/1.8/rubygems/installer.rb:533:in `build_extensions': ERROR: Failed to build gem native extension. (Gem::Installer::ExtensionBuildError) 

      /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby extconf.rb 
    mkmf.rb can't find header files for ruby at /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/ruby.h 


    Gem files will remain installed in /Library/Ruby/Gems/1.8/gems/sqlite3-1.3.3 for inspection. 
    Results logged to /Library/Ruby/Gems/1.8/gems/sqlite3-1.3.3/ext/sqlite3/gem_make.out 
     from /Library/Ruby/Site/1.8/rubygems/installer.rb:486:in `each' 
     from /Library/Ruby/Site/1.8/rubygems/installer.rb:486:in `build_extensions' 
     from /Library/Ruby/Site/1.8/rubygems/installer.rb:159:in `install' 
     from /Library/Ruby/Gems/1.8/gems/bundler-1.0.12/lib/bundler/source.rb:96:in `install' 
     from /Library/Ruby/Gems/1.8/gems/bundler-1.0.12/lib/bundler/installer.rb:55:in `run' 
     from /Library/Ruby/Gems/1.8/gems/bundler-1.0.12/lib/bundler/spec_set.rb:12:in `each' 
     from /Library/Ruby/Gems/1.8/gems/bundler-1.0.12/lib/bundler/spec_set.rb:12:in `each' 
     from /Library/Ruby/Gems/1.8/gems/bundler-1.0.12/lib/bundler/installer.rb:44:in `run' 
     from /Library/Ruby/Gems/1.8/gems/bundler-1.0.12/lib/bundler/installer.rb:8:in `install' 
     from /Library/Ruby/Gems/1.8/gems/bundler-1.0.12/lib/bundler/cli.rb:225:in `install' 
     from /Library/Ruby/Gems/1.8/gems/bundler-1.0.12/lib/bundler/vendor/thor/task.rb:22:in `send' 
     from /Library/Ruby/Gems/1.8/gems/bundler-1.0.12/lib/bundler/vendor/thor/task.rb:22:in `run' 
     from /Library/Ruby/Gems/1.8/gems/bundler-1.0.12/lib/bundler/vendor/thor/invocation.rb:118:in `invoke_task' 
     from /Library/Ruby/Gems/1.8/gems/bundler-1.0.12/lib/bundler/vendor/thor.rb:246:in `dispatch' 
     from /Library/Ruby/Gems/1.8/gems/bundler-1.0.12/lib/bundler/vendor/thor/base.rb:389:in `start' 
     from /Library/Ruby/Gems/1.8/gems/bundler-1.0.12/bin/bundle:13 
     from /usr/bin/bundle:19:in `load' 
     from /usr/bin/bundle:19 

然后我想,也许我有它已经安装了,因为我已经用它之前......但是当我做“耙分贝:创建”它给了我这样的:

找不到宝石“sqlite3的(> = 0)”中的任何在你的Gemfile中列出的宝石的来源。

我在做什么错?

+0

什么系统?从你的路径看,它看起来像MacOS X.你是否安装了开发者工具? – ghoppe 2011-04-27 04:20:03

回答

3

确保您已安装XCode。必需的头文件应该由此安装。

另外,无关的建议,停止使用sudo。看看installing RVM。它会让你的生活更轻松。

相关问题:Snow Leopard & Ruby on Rails - SQLite3 issue

+0

另外值得一提的是[MacPorts](http://macports.org/)和[Homebrew](http://mxcl.github.com/homebrew/)来管理依赖库。 – tadman 2011-04-27 05:10:48

+0

xcode解决了这个问题......谢谢! – 2011-04-28 16:56:46

0

您可能缺少sqlite3.dll文件。转到ruby文件夹中的bin文件夹并查找sql​​ite3.dll文件。如果在那里找不到它,请将其下载为http://www.sqlite.org/download.html。然后将dll文件放在bin(ruby的bin)文件夹中,再次运行bundle install,看看是否可行。

+1

这是基于错误消息的OS X安装。 – tadman 2011-04-27 05:09:22

相关问题