我正在尝试创建一个连接到远程postgresql服务器的脚本。我正在使用mavericks os x,在我的本地计算机上安装了postgresql和ruby,但是当我尝试将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。
答案 0 :(得分:1)
看起来您的解释器正在运行Ruby 2.0。您的gem
安装程序可能是2.0之前的版本,并将您的宝石安装到非2.0位置。您可以通过运行验证
gem -v
如果是这种情况,请检查您的系统是否有gem2.0
二进制文件,您可以这样使用:
sudo gem2.0 install pg