【问题标题】:Ruby/PgSQL error on Rails start : cannot load such file -- pg_ext (LoadError)Rails 启动时出现 Ruby/PgSQL 错误:无法加载此类文件 -- pg_ext (LoadError)
【发布时间】:2013-02-28 23:44:52
【问题描述】:

我是 Ruby 新手(来自 Java 背景),并且获得了从 Git 存储库访问 RoR 项目的权限。我能够通过自制软件安装 rbenv 和 Postgres 构建 Ruby,使用正确的标志安装“pg”gem。当我去启动服务器时,我在项目上“捆绑安装”并创建了一个捆绑包的任何方式:...任何帮助都将不胜感激!

$ rails s
/Users//Projects/The /vendor/bundle/gems/pg-0.14.1/lib/pg.rb:4:in require': cannot load such file -- pg_ext (LoadError)

from /Users//Projects/The Usic/vendor/bundle/gems/pg-0.14.1/lib/pg.rb:4:in <top (required)>'

from /Users//.rbenv/versions/1.9.3-p392/lib/ruby/gems/1.9.1/gems/bundler-1.3.0/lib/bundler/runtime.rb:72:in require'

from /Users//.rbenv/versions/1.9.3-p392/lib/ruby/gems/1.9.1/gems/bundler-1.3.0/lib/bundler/runtime.rb:72:in block (2 levels) in require'

from /Users//.rbenv/versions/1.9.3-p392/lib/ruby/gems/1.9.1/gems/bundler-1.3.0/lib/bundler/runtime.rb:70:in each'

from /Users//.rbenv/versions/1.9.3-p392/lib/ruby/gems/1.9.1/gems/bundler-1.3.0/lib/bundler/runtime.rb:70:in block in require'

from /Users//.rbenv/versions/1.9.3-p392/lib/ruby/gems/1.9.1/gems/bundler-1.3.0/lib/bundler/runtime.rb:59:in each'

from /Users//.rbenv/versions/1.9.3-p392/lib/ruby/gems/1.9.1/gems/bundler-1.3.0/lib/bundler/runtime.rb:59:in require'

from /Users//.rbenv/versions/1.9.3-p392/lib/ruby/gems/1.9.1/gems/bundler-1.3.0/lib/bundler.rb:132:in require'

【问题讨论】:

  • 你使用的是 ruby​​ 2.0.0 吗?

标签: ruby-on-rails ruby postgresql


【解决方案1】:

问题也出现在 Fedora 17 中。

卸载“pg”gem:

gem uninstall pg

运行包(假设 Gemfile 包含“pg”gem):

bundle

【讨论】:

  • 谢谢!今晚下班回家后我会试试这个。
【解决方案2】:

pg gem 添加到您的Gemfile。然后运行:

bundle install
bundle update

【讨论】:

    【解决方案3】:

    如果在安装 gem 期间 pq 安装不在路径中,那么 gem 无法找到它。比宝石无法正常工作。

    • 检查路径(尝试从命令行启动psql)。
    • 卸载pg-gem:gem unistall pg
    • 并重新安装:bundle installgem install pg

    【讨论】:

    • 我认为这解决了我的问题。我想我正在运行旧版本的 pg。卸载和重新安装给了我一个更新的版本。投赞成票。
    【解决方案4】:

    我很好奇你是在通过 brew 安装 postgres 之前还是之后安装了 pg gem?

    如果在您通过 brew 安装 Postgres 之前安装了 pg,您可能需要将其删除并重新安装,以便针对您当前的 Postgres 版本进行编译。

    附注:postgresapp 是通过自制软件安装 postgres 的更好选择:http://postgresapp.com/

    【讨论】:

      【解决方案5】:

      我已经安装了 pg 宝石列表 pg

      我也遇到了这个问题,我成功了。 首先,运行命令: $ gem install pg --pre
      成功安装pg-0.21.0-x64-mingw32

      接下来,更新 Gemfile:gem 'pg', '~> 0.21.0'。就是这样。

      我的rubygems环境如下:

      RubyGems Environment:
        - RUBYGEMS VERSION: 2.6.12
        - RUBY VERSION: 2.3.3 (2016-11-21 patchlevel 222) [x64-mingw32]
        - INSTALLATION DIRECTORY: C:/Ruby23-x64/lib/ruby/gems/2.3.0
        - USER INSTALLATION DIRECTORY: C:/Users/armano/.gem/ruby/2.3.0
        - RUBY EXECUTABLE: C:/Ruby23-x64/bin/ruby.exe
        - EXECUTABLE DIRECTORY: C:/Ruby23-x64/bin
        - SPEC CACHE DIRECTORY: C:/Users/armano/.gem/specs
        - SYSTEM CONFIGURATION DIRECTORY: C:/ProgramData
        - RUBYGEMS PLATFORMS:
          - ruby
          - x64-mingw32
        - GEM PATHS:
           - C:/Ruby23-x64/lib/ruby/gems/2.3.0
           - C:/Users/armano/.gem/ruby/2.3.0
        - GEM CONFIGURATION:
           - :update_sources => true
           - :verbose => true
           - :backtrace => false
           - :bulk_threshold => 1000
           - "gem" => "--no-ri --no-rdoc"
        - REMOTE SOURCES:
           - https://rubygems.org/
      

      【讨论】:

        猜你喜欢
        • 2012-07-27
        • 1970-01-01
        • 1970-01-01
        • 2015-01-22
        • 2012-10-25
        • 2012-02-27
        • 2014-08-05
        • 2018-10-19
        • 1970-01-01
        相关资源
        最近更新 更多