Rails 中的 PG pg_ext 加载错误

Posted

技术标签:

【中文标题】Rails 中的 PG pg_ext 加载错误【英文标题】:PG pg_ext load error in rails 【发布时间】:2014-12-24 09:58:01 【问题描述】:

我最近更新到 rails 4.1.6 和 ruby​​ 2.1.3p242。我还更新了我系统上的所有宝石。创建新应用程序后,我在运行服务器时不断收到 pg_ext 加载文件错误。我在带有 PostgreSQL 9.3 的 Windows 8 x64 上。 pg gem 在我之前的 RoR 安装(rails 3.2 和 ruby​​ 1.9.3)下运行良好。

在 gem 的安装目录下,我有一个 2.0/pg_ext.so 文件。我尝试将文件夹重命名为 2.1 并运行服务器。结果是一样的。我认为这是因为 Ruby 不允许 Require .so 文件。以下是错误截图:

任何帮助将不胜感激。谢谢!

【问题讨论】:

ruby 2.1下需要重新安装pg gem 我试过这样做。没用 【参考方案1】:

宝石官方页面发布问题:

https://bitbucket.org/ged/ruby-pg/issue/192/pg_ext-load-error

根据建议,我安装了下一个版本的预版本。这给了我另一个错误,使用以下方法解决了:

https://github.com/tzinfo/tzinfo/wiki/Resolving-TZInfo::DataSourceNotFound-Errors TZInfo::DataSourceNotFound error starting Rails v4.1.0 server on Windows

发布答案以帮助将来面临类似问题的人。

【讨论】:

谢谢。现在使用预发布版本解决了这个问题。干杯。 没问题。我也将它用于开发和测试。希望他们能尽快发布下一个稳定版本。【参考方案2】:

1) 在命令行输入:

gem install pg --pre
gem list pg

2) 在 Gemfile 中将 gem 设置为新安装的版本:

gem 'pg', '~> 0.18.2'

【讨论】:

以上是关于Rails 中的 PG pg_ext 加载错误的主要内容,如果未能解决你的问题,请参考以下文章

PostGIS 错误 - PG::InternalError: 错误: 无法加载库

AWS DMS - Oracle 到 PG RDS 完全加载操作错误 - 无法从 csv 文件加载数据

Rails:不能包含 pg_search Gem 提供的 PgSearch 模块

Rails ActiveRecord:PG::Error:错误:列引用“created_at”不明确

Heroku / Rails:PG :: Undefined Table:错误“[tablename]”在heroku rails迁移上不存在

Rails 遗留应用程序和 Ruby 2 错误:无法从文件类型 yml 加载翻译未知