安装Sqlite3 for Ruby(Mac OSX 10.5.8)

我正在遵循本指南ATM – http://guides.rubyonrails.org/getting_started.html#getting-up-and-running-quickly-with-scaffolding

在尝试创建数据库时,我得到了:

Morgans-Computer:博客Morgan $ rake db:create无法在Gemfile中列出的任何gem源中找到gem’sqlite3(> = 0)’。 运行bundle install以安装缺少的gem。

当我尝试运行’bundle install’时,我收到更多错误:

安装带有本机扩展的sqlite3(1.3.4)/Users/Morgan/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/installer.rb:551:在`rescue in build_extensions中的块’:错误:无法构建gem原生扩展。 (gem::安装:: ExtensionBuildError)

  /Users/Morgan/.rvm/rubies/ruby-1.9.2-p290/bin/ruby extconf.rb 

我曾尝试安装Ruby Gem Sqlite3(http://rubygems.org/gems/sqlite3-ruby),但它仍然失败。 我在这里发现另一篇post说我需要安装C,因为这是编译器编写的内容? 不确定这究竟意味着什么,或者我是如何去做的。

任何帮助将不胜感激!!

如果您还没有安装自制软件 ,我会先设置它。 它是一个很好的包管理器,允许你使用brew install sqlite安装像sqlite这样的东西。

要安装brew,您需要安装xcode。 如果您还没有,那么您可能需要系统附带的CD,或者您可以从Apple的网站下载。 在最新的操作系统上,您可以从App Store安装它,这很好(这也可能适合您)。

如果您有mysql并且更愿意使用它并且回避sqlite问题,那么您可以生成rails项目。

 rails new my_new_project -d mysql 

当您安装sqlite适配器gem时,它必须编译代码。 要编译代码,需要访问sqlite开发库。

Mac OS X上的这个Rails教程解释了如何做到这一点。 这是最直接相关的部分:

  sudo chown -R `whoami` /usr/local #make sure we have correct permissions to install sqlite brew install sqlite gem install sqlite3 

在Mac上,您可能想要安装Xcode 。 你也可能需要一些sqlite3其他软件包,你应该可以通过MacPorts (ports: sqlite3 + rb19-sqlite3 )。

如果您已经安装了Xcode,请转到MacPorts安装页面 ,下载并安装提供的.dmg 。 然后你应该能够从控制台运行它来安装必要的包:

 sudo port install sqlite3 rb19-sqlite3 

您也可以像其他人所建议的那样使用Homebrew 。