WINDOWSの下にソースコードを付けてインストールします
WindowsにPostgreSQLをインストールする必要があるほとんどの一般ユーザーは、公式Webサイトからワンクリックインストールパッケージをダウンロードしてインストールすることをお勧めします。ソースコードのインストールは、主にPostgreSQL開発者、またはPostgreSQL関連の拡張機能の開発者を対象としています。
WindowsでPostgreSQLをビルド、コンパイル、およびインストールする方法は多数あります。Microsoftツールの場合、コンパイルする最も簡単な方法は、最新バージョンのMicrosoftプラットフォームSDKをインストールし、独自のコンパイラでコンパイルすることです。Visual C ++ 2005または2008を使用してコンパイルおよびインストールすることもできます。場合によっては、コンパイラに加えてSDKプラットフォームをインストールする必要があります。
MinGWが提供するGNUコンパイラツールを使用して、または古いバージョンのWindowsの場合はCygwinを使用してPostgreSQLをビルドすることもできます。
MinGWのGNUコンパイラを使用してPostgreSQLをコンパイルすることもできます。Windowsのバージョンが古い場合は、Cygwinの下のコンパイルツールを使用できます。
最後に、クライアントアクセスライブラリ(libpq)は、Visual C ++ 7.1またはBorlandC ++を使用して構築でき、これらのツールを使用して構築された静的にリンクされたアプリケーションとの互換性があります。
最後に、静的にリンクされたlibpqアプリケーションと互換性を持たせるために、Visual C ++ 7.1またはBorlandC ++を使用してlibpqをコンパイルできます。
MinGWまたはCygwinを使用したビルドでは、通常のビルドシステムが使用されます。第15章、およびセクション15.7.5とセクション15.7.2の特定の注意事項を参照してください。これらの環境でネイティブ64ビットバイナリを生成するには、MinGW-w64のツールを使用します。これらのツールを使用して、LinuxやDarwinなどの他のホスト上の32ビットおよび64ビットのWindowsターゲットをクロスコンパイルすることもできます。Cygwinは、運用サーバーの実行にはお勧めしません。Windows98など、ネイティブビルドが機能しない古いバージョンのWindowsでの実行にのみ使用してください。公式バイナリはVisualStudioを使用してビルドされます。
MinGWまたはCygwinの一般的なコンパイルシステムを使用する場合、関連する手順については、第15章のセクション15.7.5およびセクション15.7.2を参照してください。これらの環境でネイティブ64ビット実行可能プログラムを生成するには、MinGW-w64に含まれているツールを使用できます。これらのツールは、32ビットおよび64ビットウィンドウでクロスコンパイルを実行して、LinuxやDarwinなどのクロスプラットフォームで実行可能プログラムを生成およびコンパイルすることもできます。Cygwinプラットフォームは、実稼働環境のサーバーには推奨されません。システムのコンパイラがWindows98などの古いバージョンのWindowsでコンパイルできない場合にのみ使用するのに適しています。公式のバイナリ実行可能ファイルは、VisualStudioでコンパイルされます。
psqlのネイティブビルドは、コマンドライン編集をサポートしていません。Cygwinビルドはコマンドライン編集をサポートしているため、Windowsでインタラクティブに使用するためにpsqlが必要な場合に使用する必要があります。
ネイティブのpsql実行可能プログラムはコマンドライン編集をサポートしておらず、Cygwinでコンパイルされた実行可能ファイルはコマンドライン編集をサポートしているため、ウィンドウ環境でインタラクティブpsqlを使用する場合は、Cygwinコンパイルを使用することをお勧めします。
1 Visual C ++またはSDKプラットフォームで作成
PostgreSQLは、MicrosoftのVisual C ++コンパイラスイートを使用してコンパイルを作成できます。これらのコンパイラは、Visual Studio、Visual Studio Express、またはPlatformSDKの一部のバージョンにすることができます。Visual Studio環境を構成していない場合、最も簡単な方法は、Microsoftの公式Webサイトから無料でダウンロードできるSDKプラットフォームコンパイラーを使用することです。
PostgreSQLは、Visual Studio2005およびVisualStudio 2008のコンパイラをサポートしています。PlatformSDKのみを使用する場合、または64ビットWindowsバージョンをコンパイルする場合は、Visual Studio2008コンパイラのみがサポートされます。Visual Studio 2010は、WindowsプラットフォームでのPostgreSQLのコンパイルをまだサポートしていません。
Visula C ++で作成されたツールは、ディレクトリsrc / tools / msvcにあります。コンパイルするときは、システムパスにMinGWまたはCygwinツールが表示されていないこと、および必要なすべてのVisual C ++ツールがパスにあることを確認してください。Visual Studioで、Visual Studioコマンドプロンプトを起動します。SDKプラットフォームで、スタートメニューに表示されているCMDシェルを起動します。64ビットバージョンをコンパイルする場合は、64ビットバージョンのコマンドを使用する必要があります。すべてのコマンドは、src \ tools \ msvcディレクトリから実行する必要があります。
コンパイルする前に、config.plファイルを編集して、変更する構成オプションを反映するか、使用する別のライブラリへのパスを指定する必要がある場合があります。完全な構成は、初めて読み取られて解析されるファイルconfig_default.plによって決定され、config.plからの変更に適用されます。たとえば、Pythonのインストール場所を指定するには、config.plファイルに次のステートメントを記述します。
$config->{python} = 'c:\python26';
config_default.plファイルのパラメーターとは異なるパラメーターを指定するだけで済みます。
他の環境変数を設定する必要がある場合は、buildenv.plというファイルを作成し、そのファイルに必要なコマンドを入力します。たとえば、bisonへのパスを追加するには、次を含むファイルを作成します。
$ENV{PATH}=$ENV{PATH} . ';c:\some\where\bison\bin';
1.1要件
PostgreSQLをビルドおよびコンパイルするには、次の追加ツールが必要です。ファイルconfig.plを使用して、各ライブラリが配置されているディレクトリを指定します。
Microsoftプラットフォーム用のプラットフォームSDK
Microsoft Platform SDKを最新バージョン(最新バージョンは7.0)にアップグレードすることをお勧めします。最新バージョンは、Webサイトhttp://www.microsoft.com/downloads/からダウンロードできます。
Windowsヘッダーファイルは常にSDKとSDKの一部のライブラリに保持する必要があります。インストールしたPlatformSDKに既にVisualC ++コンパイラが含まれている場合は、VisualStudioを使用してコンパイルする必要はありません。
ActiveState Perl
ActiveState Perlはコンパイルおよび生成スクリプトの実行に使用されますが、MinGWまたはCygwinのPerlは実行できません。Perlが配置されているパスは、pathPATH環境変数に配置する必要があります。バイナリはhttp://www.activestate.comからダウンロードできます(注:バージョン5.8以降が必要です。無料の標準パッケージで十分です)
以下の追加製品は、開始する前に必要ではありませんが、完全なパッケージをコンパイルするときに必要です。config.plファイルを使用して、ライブラリの使用可能なディレクトリを指定します。
ActiveState TCL
PL / TCLのコンパイルに使用されます(注:バージョン8.4が必要であり、無料の標準パッケージで十分です)
バイソンとフレックス
BisonとFlexはGitからのコンパイルに使用されますが、配布ファイルをコンパイルする場合は必要ありません。Bisonはバージョン1.875または2.2以降でのみ使用可能であることに注意してください。同様に、Flexにはバージョン2.5.31以降が必要です。Bisonはhttp://gnuwin32.sourceforge.netからダウンロードでき、Flexはhttp://www.postgresql.org/ftp/misc/winflex/からダウンロードできます。
差分
回帰テストの実行には差分が必要であり、http://gnuwin32.sourceforge.netからダウンロードできます。
Gettext
Gettextは、NLSサポートを使用してコンパイルするために必要であり、http://gnuwin32.sourceforge.netからダウンロードできます。注:バイナリ、管理、および開発ファイルはすべて必要です。
Kerberosを使用
必要なKerberos認証をサポートするには、MITKerberosをhttp://web.mit.edu/Kerberos/dist/index.htmlからダウンロードできます。
libxml2とlibxslt
XMLをサポートするには、バイナリファイルをhttp://zlatkovic.com/pub/libxmlまたはソースファイルhttp://xmlsoft.orgからダウンロードできます。注:同じダウンロード場所から取得できるlibxml2にはiconvが必要です。
openssl
SSLをサポートするには、バイナリファイルをhttp://www.slproweb.com/products/Win32OpenSSL.htmlまたはソースファイルhttp://www.openssl.orgからダウンロードできます。
ossp-uuid
UUID-OSSPをサポートするには、ソースファイルをhttp://www.ossp.org/pkg/lib/uuid/からダウンロードできます。
Python
PL / Pythonをコンパイルするには、バイナリファイルをhttp://www.python.orgからダウンロードできます。
zlib
pg_dumpおよびpg_restoreへの圧縮をサポートするために、バイナリファイルをhttp://www.zlib.netからダウンロードできます。
1.264ビットウィンドウに関する特別な考慮事項
PostgreSQLは64ビットウィンドウのx64アーキテクチャ用にのみコンパイルされ、itaniumプロセッサをサポートしていません。
32ビットバージョンと64ビットバージョンの混合システムは、同じビルドツリーではサポートされていません。これらの環境にある場合、ビルドシステムはそれに応じて自動的に検出してコンパイルします。このため、コンパイルする前に正しいコマンドを開始することが重要です。
pythonやopensslなどのサーバー側のサードパーティライブラリを使用するには、ライブラリが64ビットである必要があります。64ビットサーバーに32ビットライブラリをダウンロードすることはサポートされていません。32ビットで使用できるのはPostgreSQLでサポートされているサードパーティライブラリの一部のみです。この場合、64ビットPostgreSQLでは使用できません。
1.3コンパイル
PostgreSQL(デフォルト)で構成されたすべてのディストリビューションをコンパイルするには、コマンドを実行します
ビルド
デバッグ構成ですべてのPostgreSQLをコンパイルするには、コマンドを実行します
DEBUGをビルドする
psqlなどの単一のプロジェクトのみをコンパイルし、コマンドを実行します
build psql
build DEBUG psql
デフォルトのコンパイル構成をデバッグ構成に変更するには、buildenv.plファイルに次のステートメントを記述します。
$ ENV {CONFIG} = "デバッグ";
Visual Studio GUIで構成をコンパイルすることもできます。この場合、コマンドプロンプトから実行する必要があります。
perl mkvcbuild.pl
次に、生成されたファイルpgsql.sln(ソースツリーのルートディレクトリ内)をVisualStudioで開きます。
1.4クリーニングしてインストールする
ほとんどの場合、Visual Studioの自動依存関係フットプリントが変更されたファイルを処理しますが、大きな変更がある場合は、インストールをクリーンアップすることをお勧めします。これを行うには、clean.batコマンドを実行するだけで、生成されたすべてのファイルが自動的にクリアされます。distパラメータを実行することもできます。この場合、distcleanを作成し、flex / bison出力ファイルを削除するのと同様になります。
デフォルトでは、すべてのファイルはデバッグディレクトリまたはリリースディレクトリのサブディレクトリに書き込まれます。標準設定を使用してこれらのファイルをインストールするには、これらの生成されたファイルを初期化し、データベースを使用して、次のコマンドを実行します。
c:\ destination \ directoryをインストールします
1.5回帰テストを実行する
回帰テストを実行するには、最初にコンパイルの必要な部分が完了していることを確認し、システムのすべての部分をロードするために使用されるDLLがシステムパスにあることを確認する必要があります。そうでない場合は、buildenv.plファイルを使用して設定します。テストを実行するには、ディレクトリsrc \ tools \ msvcで次のコマンドのいずれかを実行します。
vcregress check
vcregress installcheck
vcregress plcheck
vcregress contribcheck
使用するスケジューラーを変更するには(デフォルトは並列)、コマンドラインに追加します。
vcregress check serial
回帰テストの詳細については、第30章を参照してください。
1.6ファイルをコンパイルする
PostgreSQLファイルをHTML形式でコンパイルするには、いくつかのツールとファイルが必要です。これらすべてのファイル用に新しいルートディレクトリを作成し、以下に示すサブディレクトリに保存します。
OpenJade 1.3.1-2
http://sourceforge.net/projects/openjade/files/openjade/1.3.1/openjade-1_3_1-2-bin.zip/downloadからダウンロードし、サブディレクトリopenjade-1.3.1に解凍します。
DocBook DTD 4.2
http://www.oasis-open.org/docbook/sgml/4.2/docbook-4.2.zipからダウンロードし、docbookサブディレクトリに解凍します。
DocBook DSSSL 1.79
http://sourceforge.net/projects/docbook/files/docbook-dsssl/1.79/docbook-dsssl-1.79.zip/downloadからダウンロードし、docbook-dsssl-1.79サブディレクトリに解凍します。
ISO文字エンティティ
http://www.oasis-open.org/cover/ISOEnts.zipからダウンロードし、docbookサブディレクトリに解凍します。
buildenv.plファイルを編集し、ルートディレクトリの場所に変数を追加します(例:
$ ENV {DOCROOT} = 'c:\ docbook';
ドキュメントをビルドするには、コマンドbuilddoc.batを実行します。これにより、インデックスを生成するために、実際にはビルドが2回実行されることに注意してください。生成されたHTMLファイルはdoc \ src \ sgmlにあります。ファイルをビルドするには、コマンドを実行します。 builddoc。bat。インデックスを生成するために、コンパイルは実際には2回実行されることに注意してください。生成されたHTMLファイルはディレクトリdoc \ src \ sgmlにあります。
2 libpqをVisualC ++またはBorlandC ++でコンパイルします
アプリケーションに接続するために異なるデバッグ/リリースフラグまたは静的ライブラリを備えたバージョンが必要な場合は、Visual C ++ 7.1-9.0またはBorlandC ++を使用してlibpqをコンパイルすることのみをお勧めします。通常、MinGW、Visual Studio、またはSDKプラットフォームの方法を使用することをお勧めします。Visual Studio 7.1以降を使用してlibpqクライアントライブラリをコンパイルし、srcディレクトリを変更して、次のコマンドを入力します。
nmake / f win32.mak
Visual Studio 8.0以降を使用して64ビットのlibpqクライアントライブラリを作成し、srcディレクトリを変更して、次のコマンドを入力します。
nmake / f win32.mak CPU = AMD64
サポートされている変数の詳細については、win32.makファイルを参照してください。
Borland C ++を使用してlibpqクライアントライブラリをコンパイルし、srcディレクトリを変更して、次のコマンドを入力します。
make -N -DCFG = Release / f bcc32.mak
2.1ファイルの生成
次のファイルがコンパイルされます。
interfaces \ libpq \ Release \ libpq.dll
動的に接続可能なフロントエンドライブラリ
interfaces \ libpq \ Release \ libpqdll.lib
プログラムをlibpq.dllの重要なライブラリにリンクします
interfaces \ libpq \ Release \ libpq.lib
フロントエンドライブラリの静的バージョン
通常、クライアントファイルをインストールする必要はありません。libpq.dllファイルとアプリケーションの実行可能ファイルを同じディレクトリに配置する必要があります。どうしても必要な場合を除いて、libpq.dllをWindows、System、またはSystem32ディレクトリにインストールしないでください。ファイルがインストーラーとともにインストールされる場合は、インストール前にversioninfoでファイルをチェックして、ライブラリの新しいバージョンが上書きされないことを確認する必要があります。
このマシンで開発する場合は、サブディレクトリsrc \ includeとsrc \ interfaces \ libpqをインクルードパスに追加する必要があります。
ライブラリを使用するには、プロジェクトにlibpqdll.libを追加する必要があります。(Visual C ++では、プロジェクトを右クリックして[追加]を選択するだけです。)