【问题标题】:cannot load such file -- sqlite3/sqlite3_native (LoadError) in Ruby 2 running rails 3.2.11无法在运行 rails 3.2.11 的 Ruby 2 中加载此类文件 - sqlite3/sqlite3_native (LoadError)
【发布时间】:2013-03-25 10:30:28
【问题描述】:

我在尝试运行 rails s 时遇到上述错误。

bundle show sqlite3 产生

c:/ruby/lib/ruby/gems/2.0.0/gems/sqlite3-1.3.7-x86-mingw32(这意味着,gasp,我在 Windows XP 机器上运行它。)

我也有:

group :development, :test do
  ...
  gem 'sqlite3'
  ...
end

我还没有找到与此类似(环境方面)的任何其他答案。有什么帮助吗?

【问题讨论】:

  • 抱歉这个愚蠢的问题,但您确实运行了bundle install,对吧?
  • 您自己正确安装了sqlite3? (检查命令行工具sqlite3是否可用)
  • 你的 PATH 或任何需要的地方有 sqlite3.dll 吗?
  • @padde 在这两个方面都是,请参阅上面的bundle show sqlite3...@rogerdpack 我想是的,因为其他 sqlite3 数据库在我在这台机器上使用的上一个 rails 迭代中工作(3.2.9)
  • 不,我们的意思是如果安装了 sqlite3 二进制文件。名为 sqlite3 的 gem 只是一个用 ruby​​ 编写的适配器。转到您的命令行并输入sqlite3 --version。如果您收到错误消息,则可能未安装。

标签: ruby ruby-on-rails-3 sqlite


【解决方案1】:

我遇到了同样的问题,而且很难解决。 这些页面帮助了我 knapsack sqlite installer from Luis Lavena 和这个 https://github.com/luislavena/sqlite3-ruby/issues/82

第一页几乎没问题,除了我有这个错误:

checking for sqlite3_libversion_number() in -lsqlite3... no

给我解决方案的第二个链接;而不是

c:\sqlite3x86>gem install sqlite3 --platform=ruby --  --with-sqlite3-dir=C:/sqlite3x86

我必须输入

c:\sqlite3x86>gem install sqlite3 --platform=ruby --  --with-sqlite3-lib=C:/sqlite3x86/lib --with-sqlite3-include=C:/sqlite3x86/include

你可能已经猜到了,我把 Luis Lavena 构建的背包 sqlite3 放在一个名为 sqlite3x86 的目录中

【讨论】:

    【解决方案2】:

    遇到了同样的问题。这不会直接回答您的问题,但我通过简单地使用 http://railsinstaller.org/ 安装整个集合来解决它,并且一切正常

    以下是railsinstaller安装的所有包:

    • Ruby 1.9.3-p392
    • Rails 3.2
    • 捆绑器
    • Git
    • Sqlite
    • TinyTDS
    • SQL 服务器
    • 支持
    • 开发工具包

    【讨论】:

      猜你喜欢
      • 2018-10-19
      • 2013-07-12
      • 1970-01-01
      • 2018-08-19
      • 1970-01-01
      • 2019-02-02
      • 2013-03-21
      相关资源
      最近更新 更多