2011-10-03 72 views
1

我试图升级我的Rails 3.0.x应用程序到3.1,但我遇到了一些问题:Heroku(我的应用程序托管在)要求我使用它们雪松堆栈&包括我的gemfile中的“PG”gem。我已经看到,在安装这个gem时,人们遇到了很多问题,因为它似乎并不知道在哪里找到Postgresql安装。Lion,RVM,Postgresql和PG Gem

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

所以我想我的问题是,我应该使用哪些方法来安装Postgresql(在Lion上)?那么,如何在没有抱怨它无法找到我的postgresql安装的情况下获得PG Gem来安装w/RVM?

回答

2

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

+0

你安装了哪个版本的PostgreSQL? –

+0

我做了'brew install postgresql',它安装了9.04。 – rdvdijk

1

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

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

查看MacOS X README了解更多详情。

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