【问题标题】:Use pg gem with ruby on os x在 os x 上使用 pg gem 和 ruby
【发布时间】:2014-07-13 22:18:11
【问题描述】:

我正在尝试创建一个将连接到远程 postgresql 服务器的脚本。我在本地计算机上使用安装了 postgresql 和 ruby​​ 的小牛 os x,但是当我尝试将 pg 加载到这样的脚本中时:

#!/usr/bin/ruby
require 'tk'
require 'tkextlib/tile'
require 'rubygems'
require 'pg'

我收到以下错误:

/Library/Ruby/Site/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require': cannot load such file -- pg (LoadError)
from /Library/Ruby/Site/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from submit.rb:5:in `<main>'

我已经安装了 os x 命令行工具并运行了以下命令:

sudo gem install pg
sudo PATH=$PATH:/Library/PostgreSQL/9.0/bin/ gem install pg
sudo ARCHFLAGS="-arch x86_64" gem install pg

它似乎安装正确,但仍然找不到 pg 功能。我用brew安装了postgresql。我的 ruby​​ 版本是 2.0.0,psql 是 9.3.4。

【问题讨论】:

    标签: ruby macos postgresql osx-mavericks


    【解决方案1】:

    看起来您的解释器正在运行 Ruby 2.0。您的 gem 安装程序可能是 2.0 之前的版本,并将您的 gem 安装到非 2.0 位置。您可以通过运行验证

    gem -v

    如果是这种情况,请检查您的系统是否有 gem2.0 二进制文件,您可以像这样使用:

    sudo gem2.0 install pg

    【讨论】:

    • 感谢您的回复!我的 ruby​​ 版本是 ruby​​ 2.1.1p76,gem 是 v 2.2.2。是否有可能是我的新版本给我带来了问题?
    • 试试gem environment。它应该告诉你你的 gem(以及哪些 ruby​​ 版本)安装在哪里 - 在这里发布。
    猜你喜欢
    • 2014-01-27
    • 2017-01-31
    • 2012-09-20
    • 2010-11-24
    • 2012-01-22
    • 2012-01-09
    • 2013-03-14
    • 2010-12-08
    • 2010-10-20
    相关资源
    最近更新 更多