为什么我不能安装sqlite?

时间:2011-04-27 03:27:02

标签: ruby-on-rails

当我使用“sudo bundle install”进行安装时安装所有这些...它会在sqlite3上抛出错误:

 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

然后我想也许我已经安装了它,因为我之前已经使用过它...但是当我做“rake db:create”它给了我这个:

在Gemfile中列出的任何gem源中找不到gem'sqlite3(> = 0)'。

我做错了什么?

2 个答案:

答案 0 :(得分:3)

确保安装了XCode。必须安装必要的头文件。

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

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

答案 1 :(得分:0)

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