必要条件

PostgreSQL 8.4.1文書
前のページ | 巻戻し | 第 15章ソースコードからインストール | 早送り | 次のページ

# 15.2. 必要条件

通常、最近のUnix互換プラットフォームならばPostgreSQLを動作させることができるはずです。 リリース時に明示的なテストを受けたプラットフォームの一覧を項15.7に示します。 配布物の`doc`サブディレクトリには、プラットフォーム固有のFAQ文書がいくつかありますので、問題が発生した場合は参照してください。

PostgreSQLを構築するには、以下のソフトウェアパッケージが必要です。

- GNU makeが必要です。 他のmakeでは動作しません。 GNU makeはよく`gmake`という名前でインストールされます。 本書では常にその名前を使用します （システムによって、GNU makeがデフォルトのツールになっているものもあります）。 GNU makeの試験を行うためには以下を実行してください。

      gmake --version

  バージョン3.76.1以降を使用することを推奨します。

- ISO/ANSI Cコンパイラ（最低限C89-準拠）が必要です。 GCC の最近のバージョンをお勧めしますが、PostgreSQLは異なるベンダの、様々なコンパイラを使用して構築できることで知られています。

- 配布物を展開するために、tarおよびgzipかbzip2のどちらかが必要です。更に、ドキュメント一式をインストールするにはgzipが必要です。

- GNU Readlineライブラリは、デフォルトで使用されます。 これによりpsql（PostgreSQLコマンドラインSQLインタプリタ）は入力したコマンドの記憶、さらに、カーソルキーを使用した過去のコマンドの再実行や編集ができるようになります。 これは非常に役に立ちますので、強く推奨します。 使用したくない場合は、`configure`に`--without-readline`オプションを指定する必要があります。 その代わりとして、BSDライセンスの`libedit`ライブラリを使用することもできます。 このライブラリは元々NetBSDで開発されていました。 `libedit`ライブラリはGNUのReadlineと互換性があり、`libreadline`を認識できなかった場合や`configure`のオプションに`--with-libedit-preferred`が使用された場合に使用されます。 パッケージベースのLinuxディストリビューションを使用し、そのディストリビューションの中で`readline`と`readline-devel`パッケージが別個に存在していた場合、両方とも必要ですので注意してください。

- zlib圧縮ライブラリはデフォルトで使用されます。 これを使用したくなければ、`configure`に対し`--without-zlib`を指定しなければなりません。 このオプションを使用すると、pg_dumpおよびpg_restore内の圧縮アーカイブサポートが無効になります。

以下のパッケージはオプションです。 これらはデフォルトの設定では必要ありませんが、下記のように特定の構築オプションを有効とする場合に必要となります。

- サーバプログラム言語であるPL/Perlを構築するには、`libperl`ライブラリとヘッダファイルを含む完全なPerlのインストレーションが必要です。 PL/Perlは共有ライブラリですので、ほとんどのプラットフォームにおいて`libperl`ライブラリも共有ライブラリでなければなりません。 これは最近のバージョンのPerlではデフォルトのようですが、以前のバージョンではデフォルトではありませんでした。 とにかく、これはPerlをサイトにインストールした人により決定されます。

  必要な共有ライブラリが存在しない場合、PostgreSQL構築中に表示される次のようなメッセージにより、そのことが指摘されます。

      *** Cannot build PL/Perl because libperl is not a shared library.
      *** You might have to rebuild your Perl installation.  Refer to
      *** the documentation for details.

  （画面上の指示に従わない場合は、単にPL/Perlライブラリオブジェクト`plperl.so`または類似のものがインストールされないだけです。） このメッセージが表示された場合、PL/Perlを構築できるようにするために、Perlを手動で再構築し、インストールする必要があります。 Perl の構築処理で、共有ライブラリとするように指定してください。

- PL/Pythonサーバプログラム言語を構築するには、ヘッダファイルとdistutilsモジュールを含むPythonのインストレーションが必要です。 distutilsモジュールはPython 1.6以降ではデフォルトで含まれます。 これより前のバージョンのPythonを使用しているユーザはインストールしなければなりません。

  PL/Pythonは共有ライブラリになりますので、ほとんどのプラットフォームでは、`libpython`もまた共有ライブラリである必要があります。 これは、Pythonのインストレーションではデフォルトではありません。 PostgreSQLを構築し、インストールした後に、（他の拡張子かもしれませんが）`plpython.so`という名前のファイルがあれば、全てが成功しています。 さもなくば、以下のような警告が表示されたはずです。

      *** Cannot build PL/Python because libpython is not a shared library.
      *** You might have to rebuild your Python installation.  Refer to
      *** the documentation for details.

  これは、この共有ライブラリを作成するためにはPythonインストレーション（の一部）を再構築する必要があることを意味しています。

  問題があった場合は、Python 2.3以降のconfigureを`--enable-shared`を付けて実行してください。 オペレーティングシステムの中には、共有ライブラリの構築が必要ないものもあります。 しかし、その場合は PostgreSQL構築システムにそのことを確認・指定する必要があります。 詳しくは`src/pl/plpython`ディレクトリの`Makefile`を参照してください。

- PL/Tcl手続き言語を構築したい場合は、もちろんTclのインストレーションが必要です。 8.4より前のリリースのTclを使用している場合は、マルチスレッドのサポートなしで構築していることを確認してください。

- 各国語サポート（NLS）、つまり、英語以外の言語によるプログラムメッセージの表示機能を有効にするには、Gettext APIの実装が必要です。 オペレーティングシステムの中には（例えば、Linux、NetBSD、Solarisなど）、組み込み済みのものがあります。 他のシステムでは、追加パッケージをhttp://developer.postgresql.org/~petere/bsd-gettext/からダウンロードすることができます。 GNU Cライブラリのgettextの実装を使用する場合、さらにいくつかのユーティリティプログラムのためにGNU Gettextパッケージが必要となります。 他の実装の場合には必要ありません。

- Kerberos、OpenSSL、OpenLDAP、PAM、または、この全ても、そのサービスを使用した認証や暗号化をサポートする場合には必要となります。

リリースされたソースパッケージではなくCVSツリーからのビルドの場合、またはサーバ開発を行いたい場合には、以下のパッケージも必要となります。

- GNUのFlexおよびBisonは、CVSチェックアウトから構築する場合や、実際のスキャナとパーサの定義ファイルを変更した場合に必要となります。 それらが必要な場合は、Flex 2.5.4以降とBison 1.875以降を使うようにしてください。 他のlexとyaccプログラムは使用できません。

  Perlも同様CVSチェックアウトから構築されなければなりません。 Perlスクリプトを使用する構築操作手順で************************* Windows上で構築する場合、いずれにしてもPerlは必要です。

GNUパッケージの入手が必要な場合、近くのGNUミラーサイトから探してください（ミラーサイトの一覧はhttp://www.gnu.org/order/ftp.htmlにあります）。 または、ftp://ftp.gnu.org/gnu/から探してください。

また、十分なディスク領域があることも確認してください。 コンパイル中、ソースツリーのために65メガバイト、インストールディレクトリに15メガバイトほど必要となります。 空のデータベースクラスタだけでも約25メガバイト必要です。データベースは、同じデータのフラットテキストファイルと比べて5倍ほどの領域が必要になります。 リグレッションテストを実行する場合は、一時的に最大で90メガバイトの領域がさらに必要になります。 ディスクの空き容量を確認するためには`df`コマンドを使います。

前のページ | ホーム | 次のページ
簡易版 | 上に戻る | ソースの入手