ruby-on-rails - rails 中的错误 : 'incompatible library version' sqlite3-1. 3.11

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

我在 Ubuntu 系统 (16.04) 上工作。

我的问题是,每当我设置任何 Rails 项目并尝试运行 rails s 时,我都会收到 sqlite3 的“库版本不兼容”错误,如下所示。

/home/jiggs/.rvm/gems/ruby-2.3.1@albumriver/gems/activesupport-4.0.0/lib/active_support/values/time_zone.rb:282: warning: circular argument reference - now
/home/jiggs/.rvm/gems/ruby-2.3.1@albumriver/gems/sqlite3-1.3.11/lib/sqlite3.rb:6:in `require': incompatible library version - /home/jiggs/.rvm/gems/ruby-2.3.1@albumriver/gems/sqlite3-1.3.11/lib/sqlite3/sqlite3_native.so (LoadError)
    from /home/jiggs/.rvm/gems/ruby-2.3.1@albumriver/gems/sqlite3-1.3.11/lib/sqlite3.rb:6:in `rescue in <top (required)>'
    from /home/jiggs/.rvm/gems/ruby-2.3.1@albumriver/gems/sqlite3-1.3.11/lib/sqlite3.rb:2:in `<top (required)>'
    from /usr/lib/ruby/vendor_ruby/bundler/runtime.rb:77:in `require'
    from /usr/lib/ruby/vendor_ruby/bundler/runtime.rb:77:in `block (2 levels) in require'
    from /usr/lib/ruby/vendor_ruby/bundler/runtime.rb:72:in `each'
    from /usr/lib/ruby/vendor_ruby/bundler/runtime.rb:72:in `block in require'
    from /usr/lib/ruby/vendor_ruby/bundler/runtime.rb:61:in `each'
    from /usr/lib/ruby/vendor_ruby/bundler/runtime.rb:61:in `require'
    from /usr/lib/ruby/vendor_ruby/bundler.rb:99:in `require'
    from /home/jiggs/sites/albumriverfinal/config/application.rb:7:in `<top (required)>'
    from /home/jiggs/.rvm/gems/ruby-2.3.1@albumriver/gems/railties-4.0.0/lib/rails/commands.rb:76:in `require'
    from /home/jiggs/.rvm/gems/ruby-2.3.1@albumriver/gems/railties-4.0.0/lib/rails/commands.rb:76:in `block in <top (required)>'
    from /home/jiggs/.rvm/gems/ruby-2.3.1@albumriver/gems/railties-4.0.0/lib/rails/commands.rb:73:in `tap'
    from /home/jiggs/.rvm/gems/ruby-2.3.1@albumriver/gems/railties-4.0.0/lib/rails/commands.rb:73:in `<top (required)>'
    from bin/rails:4:in `require'
    from bin/rails:4:in `<main>'

rails 版本:4.0.0

我尝试使用 rails 4.0.0 的 ruby​​ 版本:

  • ruby-2.0.0-p247 [x86_64]

  • ruby-2.2.5 [x86_64]

  • ruby-2.3.0 [x86_64]

  • ruby-2.3.0-preview1 [x86_64]

  • ruby-2.3.1 [x86_64]

我尝试使用 gem uninstall sqlite3 卸载 sqlite3 并尝试运行 bundle install 但出现此错误:

An error occurred while installing sqlite3 (1.3.11), and Bundler cannot continue.
Make sure that `gem install sqlite3 -v '1.3.11'` succeeds before bundling.

然后我运行 gem install sqlite3 -v '1.3.11' 并运行 rails server 并再次遇到同样的错误 incompatible library version

sqlite3 gem 安装的输出:

gem install sqlite3 -v '1.3.11'
Fetching: sqlite3-1.3.11.gem (100%)
Building native extensions.  This could take a while...
Successfully installed sqlite3-1.3.11
Parsing documentation for sqlite3-1.3.11
Installing ri documentation for sqlite3-1.3.11
Done installing documentation for sqlite3 after 1 seconds
1 gem installed

最佳答案

SQLite 库可能已损坏。尝试通过从命令提示符运行以下命令来重新安装 gem:

gem uninstall sqlite3

然后运行:

bundle install

关于ruby-on-rails - rails 中的错误 : 'incompatible library version' sqlite3-1. 3.11,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36963018/

相关文章:

ruby-on-rails - ruby hash 搜索两个条件

ruby - 正则表达式匹配所有字母数字主题标签,没有符号

ruby-on-rails - Rails 有没有办法管理有序列表?这样每个项目都有一个位置,如果删除一个元素,位置会自动更新吗?

ruby-on-rails - 为线程评论系统设置通知系统的正确方法

mysql - 对 rails 的 mysql 查询的更正

ruby-on-rails - 查找在丰富的连接表 rails 中没有关联记录的所有记录

ruby-on-rails - 根据 ActiveRecord 中的连接选择基于孙子属性的对象

css - 寄存器 0x​​104567911

ruby-on-rails - bcrypt 错误 : Devise ruby 2. 0 和 rails 4.0

ruby-on-rails - Railtie:如何访问初始化程序和库加载 Hook ?