• 締切済み

PQclientEncodingがダイナミックライブラリlibpq.dllから見つかりません

RubyでPostgresを呼び出したいのですが、ruby-postgresのインストールに何とか成功し(回答して下さった方、本当にありがとうございました)、libpq.dllをC:/WINDOWS下に置いたのですが、簡単なサンプルプログラムを読み込もうとすると下記のようなエラーが別ウィンドウで出ます。 プロシージャエントリポイントPQclientEncodingがダイナミックライブラリlibpq.dllから見つかりませんでした。 何せコンピュータについては素人なので、このエラーの対処法がわかる方がいらっしゃれば、詳しくご指導して頂けると幸いです。 宜しくお願い致します。

みんなの回答

  • sakusaker7
  • ベストアンサー率62% (800/1280)
回答No.1

一つ確認したいのですが、インストールしたPostgesqlのバージョンはいくつですか? どうもこの ruby-postgres は最近は放置状態のようでドキュメントによると - What's this ? This is the extension library to access a PostgreSQL database from Ruby. This library works with PostgreSQL 6.5/7.0/7.1/7.2; it probably works with 6.3 or earlier with slight modification, but not tested at all. - Requirements Ruby 1.3.4 or later. PostgreSQL 6.4/6.5/7.0/7.1/7.2 installed. とあります。 また、 >プロシージャエントリポイントPQclientEncodingがダイナミックライブラリlibpq.dllから見つかりませんでした。 このないといわれてしまっている PQclientEncodingというプロシージャは バージョン8になったところでなくなってしまっているようです。 ですので、 1) 7.xのバージョンのPostgresqlをインストールしなおす 2) 別の拡張を使う かする必要があると思います。 2)の方はなにがいいのかよくわかりません。 1もバージョン7系統がメンテナンス対象でなくなっていたら問題ですし。

nancykiwi
質問者

お礼

大変わかりやすい回答をありがとうございます。 Postgresqlをインストールし直したら、すんなり使えるようになりました。 また一つ、勉強になりました。 本当にありがとうございました。