PostgreSQL は Unix 互換システム用に作成されていますが、C クライアントライブラリ (libpq) と対話的ターミナル (psql) は Windows 単体でコンパイルすることができます。 ソース配布物に含まれる makefile は Microsoft Visual C++ 用に作成されたものであり、おそらく他のシステムでは動作しません。 他のシステムでは、手作業でライブラリをコンパイルすることは可能なはずです。
ティップ: Windows 98 以降を使用している場合、Cygwin ツールキットを先にインストールしていれば、PostgreSQL を "Unix 用の方法" で全てをコンパイルし使用することができます。 この場合は 第14章 を参照して下さい。
Windows 上で可能なものをすべて構築するためには、src ディレクトリに移動して以下のコマンドを入力してください。
nmake /f win32.mak
この例では Visual C++ がパス(環境変数PATH)に入っていることを仮定しています。
以下のファイルが作成されます。
動的リンク可能なフロントエンドライブラリ
ユーザのプログラムを libpq.dll にリンクする際に使用するインポートライブラリ
フロントエンドライブラリのスタティックライブラリ版
PostgreSQL 対話的ターミナル
実際にインストールする必要があるファイルは libpq.dll ライブラリのみです。 このファイルは大体の場合 WINNT\SYSTEM32 ディレクトリ (Windows 95/98/Me システムでは WINDOWS\SYSTEM ディレクトリ) に格納されます。 このファイルがセットアッププログラムを使ってインストールされるならば、ライブラリの新しいバージョンが上書きされないように、ファイルに含まれる VERSIONINFO リソースを使ったバージョンのチェックをしなければいけません。
もしこのマシンで libpq を使った開発を行う場合は、src\include と src\interfaces\libpq のソースツリーのサブディレクトリをコンパイラ設定の include パスに追加する必要があります。
ライブラリを使うためには、プロジェクトに libpqdll.lib ファイルを追加しなくてはいけません。 (Visual C++ ではプロジェクトを右クリックし、追加を選択してください。)
psqlは"コンソールアプリケーション"としてコンパイルされます。 Windowsのコンソールウィンドウは、システムの他の部分とは異なる符号化方式を使用しますので、psqlのプロンプトで8ビット文字を使用する時には特別な配慮が必要です。 psqlは、コンソール用コードページとして問題があることを検出すると、起動時に警告を発します。 コンソール用コードページを変更するためには、以下の2つが必要です。
cmd.exe /c chcp 1252と入力して、コードページを設定します。 (1252はドイツ圏で適切なコードページです。システムに合わせて下さい。) Cygwinを使用しているのであれば、このコマンドを/etc/profileに追加して下さい。
コンソール用フォントを"Lucida Console"に設定して下さい。 ラスタフォントは、ANSIコードページでは正しく動作しないためです。