文書を処理する過程で次のようなツールが使われます。 そのうちのいくつかは付記されているように省略しても構いません。
DocBookそのものの定義です。 現在はバージョン4.5を使用しており、これより古いまたは新しいバージョンは使用できません。 DocBook DTDのSGML対応版ではなく、XML対応版が必要です。
DocBookのソースをHTMLのような他のフォーマットに変換する処理手順が含まれています。
現在最低必要なバージョンは1.77.0ですが、最良の結果を得るために入手可能な最新の版を使うことをお勧めします。
xmllint
のためのLibxml2 #
このライブラリとそこに含まれるxmllint
ツールはXMLを処理するのに使われます。
PostgreSQLのコードを構築する時にも使われますので、多くの開発者はすでにLibxml2をインストールしているでしょう。
しかしながら、xmllint
は別のサブパッケージからインストールする必要があるかもしれないことに注意してください。
xsltproc
のためのLibxslt #
xsltproc
はXSLTプロセッサ、すなわち、XSLTスタイルシートを使ってXMLを他のフォーマットに変換するプログラムです。
これは変換、とりわけXMLからPDFへの変換のためのプログラムです。 PDFフォーマットで文書をビルドする場合にのみ必要です。
文書を作成するために必要な様々なツールのインストール方法についての経験をまとめました。 以下に記載します。 これらのツールは別にパッケージ化されて配布されていることも考えられます。 もしそのような配布物を見つけた場合はdocのメーリングリストに報告してください。 そのような情報をここに付け加えたいと思います。
要求されるパッケージをインストールするには以下のようにしてください。
yum install docbook-dtds docbook-style-xsl libxslt fop
pkg
で必要なパッケージをインストールするには以下を使います。
pkg install docbook-xml docbook-xsl libxslt fop
提供されているMakefileはFreeBSDのmake
用ではありませんので、doc
ディレクトリから文書を作成するにはgmake
を使うことが必要でしょう。
Debian GNU/Linux用の文書作成パッケージの一式が揃っています。 インストールには以下を使います。
apt-get install docbook-xml docbook-xsl libxml2-utils xsltproc fop
MacPortsを使っているのであれば、以下のようにすれば設定されます。
sudo port install docbook-xml docbook-xsl-nons libxslt fop
Homebrewを使っているのであれば、こちらを使ってください。
brew install docbook docbook-xsl libxslt fop
Homebrewで提供されたプログラムでは、次の環境変数を設定する必要があります。 Intelベースのマシンの場合は、以下を設定します。
export XML_CATALOG_FILES=/usr/local/etc/xml/catalog
Apple Siliconベースのマシンの場合は、以下を設定します。
export XML_CATALOG_FILES=/opt/homebrew/etc/xml/catalog
設定しなかった場合、xsltproc
は次のようなエラーを発生させます。
I/O error : Attempt to load network entity http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd postgres.sgml:21: warning: failed to load external entity "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" ...
Appleが提供するバージョンのxmllint
とxsltproc
をMacPortsやHomebrewの代わりに使用することは可能ですが、DocBookのDTDとスタイルシートをインストールし、それらを指すカタログファイルを設定する必要があります。
configure
による検出 #
PostgreSQL本体のプログラムを構築した時のように、文書を構築する際にconfigure
スクリプトを実行する必要があります。
実行が終わる近辺の出力を確認してください。次のような感じになっているはずです。
checking for xmllint... xmllint checking for xsltproc... xsltproc checking for fop... fop checking for dbtoepub... dbtoepub
xmllint
やxsltproc
が見つからない時は、文書の構築はできません。
fop
はPDF形式で文書を構築するのにのみ必要です。
dbtoepub
はEPUB形式で文書を構築するのにのみ必要です。
必要ならconfigure
にどこでこれらのプログラムを見つけられるか教えることができます。例えば、
./configure ... XMLLINT=/opt/local/bin/xmllint ...
Mesonを使ってPostgreSQLを構築したい場合は、17.4で説明されているようにmeson setup
を実行し、J.4を参照してください。