文書を処理する過程で次のようなツールが使われます。 そのうちのいくつかは付記されているように省略しても構いません。
DocBookそのものの定義です。 現在はバージョン4.2を使用しており、これより古いまたは新しいバージョンは使用できません。 DocBook DTDのSGML版が必要です。 しかし、マニュアルページの構築には同じバージョンのXML版も必要です。
DocBookに必要なものですが、ISOで保守されているため別に配布されています。
DocBookのソースをHTMLのような他のフォーマットに変換する処理手順が含まれています。
これはDocBookから他のフォーマットに変換する別のスタイルシートです。 現在これを使用してマニュアルページと一部のHTMLHelpを作成しています。 このツールチェインを使用してHTMLやPDF出力を作成することもできます。 しかし公式のPostgreSQLリリースではこの目的にはDSSSLスタイルシートを使用します。
現在最低必要なバージョンは1.74.0です。
SGMLを処理する基本パッケージです。 ここにはSGMLパーサ、(DSSSLスタイルシートを使用してSGMLを他のフォーマットに変換するプログラムである)DSSSLプロセッサ、および数多くの関連ツールが含まれています。 Jadeは現在James ClarkではなくOpenJadeグループが保守しています。
xmllint
のためのLibxml2このライブラリとそこに含まれるxmllint
ツールはXMLを処理するのに使われます。
PostgreSQLのコードを構築する時にも使われますので、多くの開発者はすでにLibxml2をインストールしているでしょう。
しかしながら、xmllint
は別のサブパッケージからインストールする必要があるかもしれないことに注意してください。
xsltproc
のためのLibxsltこれは(DSSSLスタイルシート用の処理ツールであるjade
のような)XSLTスタイルシートを取り扱う処理ツールです。
お望みならばJadeTeXをインストールしてJadeをフォーマットするバックエンドとしてTeXを使うこともできます。 JadeTeXによってPostScriptまたは(ブックマーク付きの)PDFファイルが作成できます。
とは言っても、JadeTeXでの出力はRTFバックエンドで得られる結果よりも品質が劣ります。 特に問題があるのは表と水平垂直方向のスペーシングに関係する多彩な細工に関わる部分です。 さらに、でき上がった結果を手作業で修正することもできません。
文書を作成するために必要な様々なツールのインストール方法についての経験をまとめました。 以下に記載します。 これらのツールは別にパッケージ化されて配布されていることも考えられます。 もしそのような配布物を見つけた場合はdocのメーリングリストに報告してください。 そのような情報をここに付け加えたいと思います。
要求されるパッケージをインストールするには以下のようにしてください。
yum install docbook-dtds docbook-style-dsssl docbook-style-xsl libxslt openjade
FreeBSDのドキュメントプロジェクトそのものがDocBookのヘビーユーザですから、FreeBSD上で使用できる文書作成用ツールの「ports」一式が揃っていることは驚くに当たりません。 FreeBSD上で文書を構築するには以下のportsが必要です。
textproc/docbook-sgml
textproc/docbook-xml
textproc/docbook-xsl
textproc/dsssl-docbook-modular
textproc/libxslt
textproc/openjade
/usr/ports/print
(tex
、jadetex
)の中にも興味を引くものが数多くあります。
FreeBSDでの文書作成ツールについてのさらに詳しい情報はFreeBSD Documentation Project's instructionsにあります。
Debian GNU/Linux用の文書作成パッケージの一式が揃っています。 インストールには以下を使います。
apt-get install docbook docbook-dsssl docbook-xsl libxml2-utils openjade1.3 opensp xsltproc
MacPortsを使っているのであれば、以下のようにすれば設定されます。
sudo port install docbook-dsssl docbook-sgml-4.2 docbook-xml-4.2 docbook-xsl libxslt openjade opensp
DocBookツールを手作業でインストールするのは何かと複雑ですから、もし既にできているパッケージがあるならばそちらを使った方が良いでしょう。 ここでは、標準的なインストール手順として、一般的な機能以外を持たせない標準的な設定のみを説明します。 詳しいことはそれぞれのパッケージの文書とSGMLの入門資料を読んでください。
OpenJadeのインストールは、GNU形式の./configure; make; make install
という構築手順で行います。
詳しいことはOpenJadeソース配布物の中にあります。
要約すると次のようになります。
./configure --enable-default-catalog=/usr/local/share/sgml/catalog make make install
「デフォルトカタログ」をどこに置いたか覚えておいてください。
後で必要になります。
そのままにしておいても構いませんが、後でjadeを使用する時にはSGML_CATALOG_FILES
環境変数を設定してファイルの場所を指定する必要があります
(既にOpenJadeがインストールされていて残りのツール一式を別の場所にインストールしたい場合にはこの方法を使用する手があります)。
何人かのユーザはPDFを作成する際にOpenjade 1.4develを使用すると次のようなメッセージを受け取り、セグメンテーションフォルトになっています。
openjade:./stylesheet.dsl:664:2:E: flow object not accepted by port; only display flow objects accepted make: *** [postgres-A4.tex-pdf] Segmentation fault
Openjade 1.3に下げてエラーを取り除いてください。
さらにdsssl
ディレクトリからどこか、例えば/usr/local/share/sgml/dsssl
といったディレクトリにdsssl.dtd
、fot.dtd
、style-sheet.dtd
およびcatalog
をインストールします。
ディレクトリ全てを一括コピーすることが一番簡単です。
cp -R dsssl /usr/local/share/sgml
最後に、/usr/local/share/sgml/catalog
ファイルを作成して以下の行を付け加えます。
CATALOG "dsssl/catalog"
(これはステップ 2でインストールされたファイルへの相対的参照パスです。 インストール先のレイアウトを変更している場合にはそれに合わせる必要があります。)
DocBook V4.2を入手します。
/usr/local/share/sgml/docbook-4.2
ディレクトリを作成してそこに移動します。
(正確にこの場所でなくても構いませんが、ここで説明して行く流れの中では筋が通っているものです。)
$
mkdir /usr/local/share/sgml/docbook-4.2
$
cd /usr/local/share/sgml/docbook-4.2
アーカイブを伸長します。
$
unzip -a ...../docbook-4.2.zip
(アーカイブは現在のディレクトリに伸長されます。)
/usr/local/share/sgml/catalog
ファイル(もしくはインストール時にjadeに指定したファイルに)に以下の1行を付け加える編集を行います。
CATALOG "docbook-4.2/docbook.cat"
ISO 8879 character entities archiveをダウンロードし、伸長してできたファイルをDocBookのファイルと同じディレクトリに置きます。
$
cd /usr/local/share/sgml/docbook-4.2
$
unzip ...../ISOEnts.zip
DocBookとISOファイルを置いたディレクトリで以下のコマンドを実行します。
perl -pi -e 's/iso-(.*).gml/ISO\1/g' docbook.cat
(この操作によって、DocBookカタログファイルで使われる名称と実際のISO文字エンティティファイル間での重複が整理されます。)
スタイルシートのインストールは、配布物を伸長して、例えば/usr/local/share/sgml
のような適当な場所に置きます。
(アーカイブは自動的にサブディレクトリを作成します。)
$
gunzip docbook-dsssl-1.
xx
.tar.gz$
tar -C /usr/local/share/sgml -xf docbook-dsssl-1.
xx
.tar
/usr/local/share/sgml/catalog
にある通常のカタログエントリも作成されます。
CATALOG "docbook-dsssl-1.xx
/catalog"
スタイルシートは頻繁に変更されますし、他に使えるバージョンを試してみることは有益ですから、PostgreSQLはこのカタログエントリを使用しません。
どのようにスタイルシートを選択するかについての情報はJ.2.6. configure
による検出を参照してください。
JadeTeXをインストールし、使用するには、toolsとgraphicsパッケージ、Babel、AMSフォントおよびAMS-LaTeX、PSNFSS拡張と「the 35 fonts」の付属キット、PostScriptを生成するdvipsプログラム、マクロのパッケージとしてfancyhdr、hyperref、minitoc、urlおよびot2encがサポートされているTeXとLaTeX2eが既にインストールされていなくてはなりません。 これら全ては、親愛なる隣人でもあるCTANサイトにあります。 TeXの基本システムのインストールはこの紹介文の範囲をはるかに超えています。 どのようなシステムにせよ、稼働するTeXのバイナリパッケージがどこかにあるはずです。
JadeTeXをPostgreSQLの文書のソースに適用する前に、TeX内部データ構造の容量を増やさないといけない場合があります。 この件に関しての詳細はJadeTeXのインストールの説明のところに記載されています。
この操作を終えたところでJadeTeXをインストールできるようになります。
$
gunzip jadetex-
xxx
.tar.gz$
tar xf jadetex-
xxx
.tar$
cd jadetex
$
make install
$
mktexlsr
最後の2つの入力はrootになって行います。
configure
による検出PostgreSQL本体のプログラムを構築した時のように、文書を構築する際にconfigure
スクリプトを実行する必要があります。
実行が終わる近辺の次のような出力を確認してください。
checking for onsgmls... onsgmls
checking for openjade... openjade
checking for DocBook V4.2... yes
checking for DocBook stylesheets... /usr/share/sgml/docbook/stylesheet/dsssl/modular
checking for collateindex.pl... /usr/bin/collateindex.pl
checking for xsltproc... xsltproc
checking for osx... osx
もしonsgmls
あるいはnsgmls
が見つからなかった場合には以降の試験の一部は飛ばされます。
nsgmls
はJadeパッケージの一部です。
自動検出できなかった場合、環境変数JADE
、NSGMLS
を渡すことで、これらのプログラムの場所を指定することができます。
「DocBook V4.2」が見つからない場合はDocBook DTDキットをJadeが見つけられない場所に置いたか、もしくはカタログファイルが正しく設定されていません。
前述のインストレーションのヒントを参照してください。
DocBookスタイルシートはいくつか比較的標準となっている場所から探されますので、別の場所に置いた時には、DOCBOOKSTYLE
環境変数でその場所を設定してからconfigure
を後で再実行します。