[pgsql-jp: 40873] Re: 8.4のlibpqについて

Itagaki Takahiro itagaki.takahiro @ gmail.com
2011年 8月 2日 (火) 10:15:12 JST


2011/8/2 小沢 和也 (Kazuya Ozawa) <ozawa @ nippa.co.jp>:
> 8.4にあるlibpq-fe.hとpostgres_ext.hをインクルードし、
> libpq.libをリンカ入力してlibpq.dllを使うアプリを作成したのですが、
> PostgresがインストールされていないPCでこのアプリを
> 実行すると、DLLが足りないために実行できないという
> エラーが出ます。(最初はssleay32.dllが無いと言われる)
> 結局、binフォルダにあるすべてのDLLをコピーする事で
> アプリは動きましたが、これはこういうものなのでしょうか。

libpq が依存するDLLを調べてみたのですが、PostgreSQL/x.y/bin にある
非標準のDLLに対して、結構たくさんの依存があるようです。
以前より認証関連の機能が増えたため、依存するDLLも増えたと思われます。
機能を絞った libpq を自前でビルドしない限り、他のDLLも必要になります。

SSLEAY32.DLL
LIBEAY32.DLL
LIBINTL-8.DLL
KRB5_32.DLL
COMERR32.DLL
GSSAPI32.DLL
MSVCR80.DLL

ところで、Windows 版の「クライアントのみ」用のパッケージや
インストールオプションって無いんでしたっけ?
libpq だけが欲しい場合でも、標準のインストーラだと、
サーバごとインストールすることになってしまうような。

-- 
Itagaki Takahiro


pgsql-jp メーリングリストの案内