1

我正在尝试将我的 Rails 3.0.x 应用程序升级到 3.1,但我遇到了一些问题:Heroku(我的应用程序托管在其上)要求我使用他们的 Cedar 堆栈并在我的 gemfile 中包含“PG”gem。我已经看到人们在安装这个 gem 时遇到了很多问题,因为它似乎不知道在哪里可以找到 Postgresql 的安装位置。

我知道我安装 Postgresql 的选项可能是 MacPorts、One Click Installer(来自他们的网站)、Homebrew,可能还有一些我不知道的选项。

所以我想我的问题是,我应该使用哪些方法来安装 Postgresql(在 Lion 上)?那么,我如何让 PG gem 安装 w/RVM 而不会抱怨它找不到我的 postgresql 安装?

4

2 回答 2

2

我只是使用安装了 PosgreSQL homebrew,然后为我使用gembundle install的项目做了一个。pg奇迹般有效。是的,我运行 RVM。

于 2011-10-03T13:19:20.500 回答
1

以我的经验,“一键式”安装程序效果最好,尽管我认为 Homebrew 的安装程序可能也很好。Lion 上的“一键式”版本是我在 pg 库上进行开发和测试时使用的版本。您需要避免通过 Macports 安装它,除非您确保它与 Ruby 的 OpenSSL 扩展所链接的 OpenSSL 版本相同。如果它们链接到不同的版本,则可能会出现 segfaulting 。

'pg_config' 二进制文件是安装 'pg' gem 的关键部分。如果它找不到(并且你没有使用 --with-pg-config 选项将它指向一个),它会尝试猜测安装的位置,但这并不总是有效。此外,与链接到共享库的任何扩展一样,您需要确保使用与 Ruby 相同的体系结构编译扩展。将“ARCHFLAGS”设置为“-arch x86_64”通常适用于 Lion。

有关更多详细信息,请参阅MacOS X 自述文件

如果您仍然遇到问题,请随时给我发邮件,因为我想让“pg”更容易为每个人安装。当出现问题时,我正在研究更好的诊断方法,但很难预测构建可能出现错误的每一种方式。

于 2011-10-04T17:55:33.597 回答