通常、最近のUnix互換プラットフォームならばPostgreSQLを動作させることができるはずです。 リリース時点で明示的なテストを受けていたプラットフォームを以下の17.6に示します。
PostgreSQLを構築するには、以下のソフトウェアパッケージが必要です。
GNU makeのバージョン3.81以上が必要です。
他のmakeや古いGNU makeでは動作しません。
(GNU makeはときどきgmake
という名前でインストールされます。)
GNU makeの試験を行うためには以下を実行してください。
make --version
《機械翻訳》または、Mesonを使ってPostgreSQLをビルドすることもできます。 これは現在実験的なもので、Gitチェックアウトからビルドする場合にのみ動作します(ディストリビューションのtarballからでは動作しません)。 Mesonを使うことを選択した場合、GNUのmakeは必要ありませんが、以下の要件は依然として適用されます。
《機械翻訳》Mesonの最低必要バージョンは0.54です。
ISO/ANSI Cコンパイラ(最低限C99-準拠)が必要です。 GCC の最近のバージョンをお勧めしますが、PostgreSQLは異なるベンダの、様々なコンパイラを使用して構築できることで知られています。
配布物を展開するために、tarおよびgzipかbzip2のどちらかが必要です。
GNU Readlineライブラリは、デフォルトで使用されます。
これによりpsql(PostgreSQLコマンドラインSQLインタプリタ)は入力したコマンドの記憶、さらに、カーソルキーを使用した過去のコマンドの再実行や編集ができるようになります。
これは非常に役に立ちますので、強く推奨します。
使用したくない場合は、configure
に--without-readline
オプションを指定する必要があります。
その代わりとして、BSDライセンスのlibedit
ライブラリを使用することもできます。
このライブラリはもともとNetBSDで開発されていました。
libedit
ライブラリはGNUのReadlineと互換性があり、libreadline
を認識できなかった場合やconfigure
のオプションに--with-libedit-preferred
が使用された場合に使用されます。
パッケージベースのLinuxディストリビューションを使用し、そのディストリビューションの中でreadline
とreadline-devel
パッケージが別個に存在していた場合、両方とも必要ですので注意してください。
PL/Perlは共有ライブラリですので、ほとんどのプラットフォームにおいてlibperl
ライブラリも共有ライブラリでなければなりません。
zlib圧縮ライブラリはデフォルトで使用されます。
これを使用したくなければ、configure
に対し--without-zlib
を指定しなければなりません。
このオプションを使用すると、pg_dumpおよびpg_restore内の圧縮アーカイブサポートが無効になります。
《機械翻訳》ICUロケール・プロバイダ(24.1.4を参照)がデフォルトで使用されます。
使用しない場合は、configure
に--without-icu
オプションを指定する必要があります。
このオプションを使用すると、ICU照合機能のサポートが無効になります(24.2を参照してください)。
《機械翻訳》ICU サポートを使用するには、ICU4C パッケージをインストールする必要があります。 ICU4C の最低必要バージョンは現在 4.2 です。
《機械翻訳》デフォルトでは、pkg-configを使用して必要なコンパイルオプションが検索されます。
これはICU4Cバージョン4.6以降でサポートされています。
古いバージョンやpkg-configが使用できない場合は、configure
にICU_CFLAGS
やICU_LIBS
などの変数を指定することができます。
例えば、
./configure ... ICU_CFLAGS='-I/some/where/include' ICU_LIBS='-L/some/where/lib -licui18n -licuuc -licudata'
《機械翻訳》(ICU4Cがコンパイラのデフォルト検索パスにある場合は、ICU_CFLAGS='-I/some/where/include'
のように、ICU4Cを使用しないように空の文字列を指定する必要があります。)
以下のパッケージはオプションです。 これらはデフォルトの設定では必要ありませんが、下記のように特定の構築オプションを有効とする場合に必要となります。
《マッチ度[]》サーバプログラム言語であるPL/Perlを構築するには、libperl
ライブラリとヘッダファイルを含む完全なPerlのインストレーションが必要です。
要求される最小のバージョンはPerl 5.8.3です。
PL/Perlは共有ライブラリですので、ほとんどのプラットフォームにおいてlibperl
ライブラリも共有ライブラリでなければなりません。
これは最近のバージョンのPerlではデフォルトのようですが、以前のバージョンではデフォルトではありませんでした。とにかく、これはPerlをサイトにインストールした人により決定されます。
PL/Perlを構築することを選択したのに共有のlibperl
が見つからなければ、configure
は失敗するでしょう。
その場合には、PL/Perlを構築できるようにするために手動でPerlを再構築してインストールしなければならないでしょう。
Perlの構成プロセスには共有ライブラリが必要です。
もし、PL/Perlを意図的に使用するつもりであるのなら、Perlのインストレーションがusemultiplicity
オプションを有効にして実施されているかを確認すべきです(perl -V
により有効かどうかを確認できます)。
PL/Pythonサーバプログラム言語を構築するには、ヘッダファイルとsysconfigモジュールを含むPythonのインストレーションが必要です。 要求される最小のバージョンはPython 3.2です。
PL/Pythonは共有ライブラリになりますので、ほとんどのプラットフォームでは、libpython
もまた共有ライブラリである必要があります。
ソースから構築したPythonのインストレーションでは、これはデフォルトではありませんが、共有ライブラリは多くのオペレーティングシステムのディストリビューションで入手可能です。
PL/Pythonを構築することを選択したのに共有のlibpython
が見つからなければ、configure
は失敗するでしょう。
それは、この共有ライブラリを提供するために追加のパッケージをインストールするか、Pythonのインストレーション(の一部)を再構築しなければならないということを意味しているかもしれません。
ソースから構築する場合、--enable-shared
フラグを付けてPythonのconfigureを実行してください。
PL/Tcl手続き言語の構築には、もちろんTclのインストレーションが必要です。 要求される最小のバージョンはTcl 8.4です。
《マッチ度[89.555822]》各国語サポート(NLS)、つまり、英語以外の言語によるプログラムメッセージの表示機能を有効にするには、Gettext APIの実装が必要です。 オペレーティングシステムの中には(例えば、Linux、NetBSD、Solarisなど)、組み込み済みのものがあります。 他のシステムでは、追加パッケージをhttps://www.gnu.org/software/gettext/からダウンロードできます。 GNU Cライブラリのgettextの実装を使用する場合、さらにいくつかのユーティリティプログラムのためにGNU Gettextパッケージが必要となります。 他の実装の場合には必要ありません。 《機械翻訳》ネイティブ言語サポート(NLS)を有効にするには、つまり、プログラムのメッセージを英語以外の言語で表示する機能が必要です。 一部のオペレーティングシステムにはこれが組み込まれています(Linux、NetBSD、Solaris)。 他のオペレーティングシステムでは、GNU Cライブラリのアドオンパッケージをダウンロードする必要があります。 Gettext実装をGNUCライブラリで使用している場合は、他のユーティリティプログラムには追加パッケージが必要です。 他の実装では必要ありません。
暗号化されたクライアント接続をサポートする場合にはOpenSSLが必要です。
OpenSSLは、/dev/urandom
のないプラットフォーム(Windowsを除く)での乱数生成のためにも必要です。
要求される最小のバージョンは1.0.1です。
《マッチ度[82.323232]》Kerberos、OpenLDAP、PAMが、そのサービスを使用した認証をサポートする場合には必要です。 《機械翻訳》これらのサービスを使用した認証をサポートするには、MIT Kerberos(GSSAPI用)、OpenLDAP、および/またはPAMが必要です。
LZ4が、その方式でのデータの圧縮をサポートする場合には必要です。 default_toast_compressionとwal_compressionを参照してください。
Zstandardが、その方式でのデータの圧縮をサポートする場合には必要です。 wal_compressionを参照してください。 要求される最小のバージョンは1.4.0です。
PostgreSQLの文書を構築するために必要なセットは別途記載します。 J.2を参照してください。
リリースされたソースパッケージではなくGitツリーからの構築の場合、またはサーバ開発を行いたい場合には、以下のパッケージも必要となります。
《マッチ度[]》FlexおよびBisonは、Gitチェックアウトから構築する場合や、実際のスキャナとパーサの定義ファイルを変更した場合に必要となります。 それらが必要な場合は、Flex 2.5.31以降とBison 1.875以降を使うようにしてください。 他のlexとyaccプログラムは使用できません。
《マッチ度[79.946524]》Gitからチェックアウトしたもので構築する場合や、構築時にPerlスクリプトを使用して作成されるファイルの入力となるファイルを変更する場合にはPerl5.8.3以降が必要です。 Windows上で構築する場合、いずれにしてもPerlは必要です。 Perlはテストスイートのいくつかを実行するのにも必要です。 《機械翻訳》 Gitチェックアウトからビルドする場合、またはPerlスクリプトを使用するビルドステップの入力ファイルを変更した場合は、Perl5.14以降が必要です。 Windows上でビルドする場合は、いずれにしてもPerlが必要です。 Perlは、一部のテストスイートを実行するためにも必要です。
GNUパッケージの入手が必要な場合、近くのGNUミラーサイトから探してください(ミラーサイトの一覧はhttps://www.gnu.org/prep/ftpにあります)。 または、ftp://ftp.gnu.org/gnu/から探してください。