【问题标题】:Postgres segmentation fault ruby gemPostgres 分段错误 ruby​​ gem
【发布时间】:2012-01-13 23:51:46
【问题描述】:

我正在尝试运行这个项目https://github.com/eLobato/cartodb-rb-client,但显然我的 rvm 搞砸了,或者 pg 有一个可怕的错误。 这是错误跟踪

/usr/bin/ruby1.8 -S bundle exec rspec "./spec/model/data_spec.rb" "./spec/model/metadata_spec.rb" "./spec/model/scopes_spec.rb" "./spec/client_spec.rb"
/home/daniel/.rvm/gems/ruby-1.9.2-p290@cartodb-rb-client/gems/pg-0.11.0/lib/pg_ext.so: [BUG] Segmentation fault
ruby 1.8.7 (2011-06-30 patchlevel 352) [x86_64-linux]

Aborted
rake aborted!
ruby -S bundle exec rspec "./spec/model/data_spec.rb" "./spec/model/metadata_spec.rb" "./spec/model/scopes_spec.rb" "./spec/client_spec.rb" failed

Tasks: TOP => spec
(See full trace by running task with --trace)

Segmentation fault line 确实困扰了我很多,因为我尝试重新安装 pg 无济于事。我正在运行 Ubuntu 11.10,并且我已经安装了 ruby​​ 1.9.2 和 1.8.7

有什么线索吗?

【问题讨论】:

    标签: ruby postgresql rspec segmentation-fault rails-postgresql


    【解决方案1】:

    我也有这个错误。通过删除我系统上安装的所有 Ruby 版本,然后重新安装 1.9.3 来修复它

    像这样:

    $ rvm remove all

    $ rvm install ruby-1.9.3-p392

    【讨论】:

      【解决方案2】:

      对我来说,这似乎是我的 Gemfile.lock 中的 pg gem 版本。我在那里有 0.13.2,但它似乎不适用于 Ruby 1.9.3。我跑了bundle update pg,得到了 0.14.0,然后事情就开始起作用了。

      【讨论】:

        【解决方案3】:

        您正在运行系统 Ruby 1.8.7 解释器,但不知何故加载了安装在通过 rvm 安装的 Ruby 1.9.2 下的 pg gem。

        Ruby 1.8.7 和 1.9.2 的 ABI 大不相同,因此它们的扩展不可互换。

        【讨论】:

          【解决方案4】:

          分段错误是,当程序访问内存时,内核不期望出现(索引不足,内存分配块不足等)。

          当你尝试时你会看到什么:

          ruby -S bundle --trace exec rspec "./spec/model/data_spec.rb" "./spec/model/metadata_spec.rb" "./spec/model/scopes_spec.rb" "./spec/client_spec.rb"
          

          作为对您的回溯建议?

          【讨论】:

          • :29:in require': no such file to load -- bundler (LoadError) from <internal:lib/rubygems/custom_require>:29:in require' from /usr/bin/bundle:4:in `
            '
          • 看来,从 ruby​​ 加载一些必需的库时出现问题。你是在这台机器上编译 ruby​​,还是从 Ubuntu 存储库安装它,或者在另一台机器上编译,然后只复制到这台机器上?
          • 第二个视图 - 你安装了 ruby​​ part 'bundler' 吗?这似乎是 ruby​​ 抱怨的一部分......
          猜你喜欢
          • 1970-01-01
          • 2020-03-24
          • 1970-01-01
          • 2020-03-29
          • 1970-01-01
          • 2013-09-15
          • 1970-01-01
          • 2011-05-24
          • 2017-06-15
          相关资源
          最近更新 更多