他のバージョンの文書 15 | 14 | 13 | 12 | 11 | 10 | 9.6 | 9.5 | 9.4 | 9.3 | 9.2 | 9.1 | 9.0 | 8.4 | 8.3 | 8.2 | 8.1 | 8.0 | 7.4 | 7.3 | 7.2

J.2. ツールセット

文書を処理する過程で次のようなツールが使われます。 そのうちのいくつかは付記されているように省略しても構いません。

DocBook DTD

DocBookそのものの定義です。 現在はバージョン4.2を使用しており、これより古いまたは新しいバージョンは使用できません。 DocBook DTDのSGML版が必要です。 しかし、マニュアルページの構築には同じバージョンのXML版も必要です。

ISO 8879 character entities

DocBookに必要なものですが、ISOで保守されているため別に配布されています。

DocBook DSSSL Stylesheets

DocBookのソースをHTMLのような他のフォーマットに変換する処理手順が含まれています。

DocBook XSL Stylesheets

これはDocBookから他のフォーマットに変換する別のスタイルシートです。 現在これを使用してマニュアルページと一部のHTMLHelpを作成しています。 このツールチェインを使用してHTMLやPDF出力を作成することもできます。 しかし公式のPostgreSQLリリースではこの目的にはDSSSLスタイルシートを使用します。

現在最低必要なバージョンは1.74.0です。

OpenJade

SGMLを処理する基本パッケージです。 ここにはSGMLパーサ、(DSSSLスタイルシートを使用してSGMLを他のフォーマットに変換するプログラムである)DSSSLプロセッサ、および数多くの関連ツールが含まれています。 Jadeは現在James ClarkではなくOpenJadeグループが保守しています。

Libxslt for xsltproc

これは(DSSSLスタイルシート用の処理ツールであるjadeのような)XSLTスタイルシートを取り扱う処理ツールです。

JadeTeX

お望みならばJadeTeXをインストールしてJadeをフォーマットするバックエンドとしてTeXを使うこともできます。 JadeTeXによってPostscriptまたは(ブックマーク付きの)PDFファイルが作成できます。

とは言っても、JadeTeXでの出力はRTFバックエンドで得られる結果よりも品質が劣ります。 特に問題があるのは表と水平垂直方向のスペーシングに関係する多彩な細工に関わる部分です。 さらに、でき上がった結果を手作業で修正することもできません。

文書を作成するために必要な様々なツールのインストール方法についての経験をまとめました。 以下に記載します。 これらのツールは別にパッケージ化されて配布されていることも考えられます。 もしそのような配布物を見つけた場合はdocのメーリングリストに報告してください。 そのような情報をここに付け加えたいと思います。

J.2.1. Linux RPMのインストール

数多くのベンダがディストリビューションの中にDocBook処理用のRPMパッケージ一式を提供しています。 インストールに際しては"SGML"オプションまたはsgml-commondocbookstylesheetsopenjade(あるいはjade)パッケージがあるか確認してください。 sgml-toolsと、xsltprocまたはlibxsltのいずれかも必要かもしれません。 お手持ちのディストリビューションで提供されていない時は、その他の互換性のある配布元のパッケージを利用できるはずです。

J.2.2. FreeBSDでのインストール

FreeBSDのドキュメントプロジェクトそのものがDocBookのヘビーユーザですから、FreeBSD上で使用できる文書作成用ツールの"port"一式が揃っていることは驚くに当たりません。 FreeBSD上で文書を構築するには以下のportsが必要です。

/usr/ports/printtexjadetex)の中にも興味を引くものが数多くあります。

portは/usr/local/share/sgml/catalog.portsにあるメインカタログファイルを更新しない、または順序が適切でない可能性があります。 このファイルの先頭に

CATALOG "openjade/catalog"
CATALOG "iso8879/catalog"
CATALOG "docbook/dsssl/modular/catalog"
CATALOG "docbook/4.2/catalog"

という行があることを確認してください。 もしもファイルを編集したくない場合はSGML_CATALOG_FILES環境変数をカタログファイルにコロンで分割して(上記のように)設定することもできます。

FreeBSDでの文書作成ツールについてのさらに詳しい情報はFreeBSD Documentation Project's instructionsにあります。

J.2.3. Debianパッケージ

Debian GNU/Linux用の文書作成パッケージの一式が揃っています。 インストールには以下を使います。

apt-get install docbook docbook-dsssl docbook-xsl openjade1.3 opensp xsltproc

J.2.4. OS X

MacPortsを使っているのであれば、以下のようにすれば設定されます。

sudo port install docbook-dsssl docbook-sgml-4.2 docbook-xml-4.2 docbook-xsl libxslt openjade opensp

J.2.5. ソースから手作業でインストール

DocBookツールを手作業でインストールするのは何かと複雑ですから、もし既にできているパッケージがあるならばそちらを使った方が良いでしょう。 ここでは、標準的なインストール手順として、一般的な機能以外を持たせない標準的な設定のみを説明します。 詳しいことはそれぞれのパッケージの文書とSGMLの入門資料を読んでください。

J.2.5.1. OpenJadeのインストール

  1. 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に下げてエラーを取り除いてください。

  2. さらにdssslディレクトリからどこか、例えば/usr/local/share/sgml/dssslといったディレクトリにdsssl.dtdfot.dtdstyle-sheet.dtdおよびcatalogをインストールします。 ディレクトリ全てを一括コピーすることが一番簡単です。

    cp -R dsssl /usr/local/share/sgml

  3. 最後に、/usr/local/share/sgml/catalogファイルを作成して以下の行を付け加えます。

    CATALOG "dsssl/catalog"

    (これはステップ2でインストールされたファイルへの相対的参照パスです。 インストール先のレイアウトを変更している場合にはそれに合わせる必要があります。)

J.2.5.2. DocBook DTDキットのインストール

  1. DocBook V4.2を入手します。

  2. /usr/local/share/sgml/docbook-4.2ディレクトリを作成してそこに移動します。 (正確にこの場所でなくても構いませんが、ここで説明して行く流れの中では筋が通っているものです。)

    $ mkdir /usr/local/share/sgml/docbook-4.2
    $ cd /usr/local/share/sgml/docbook-4.2

  3. アーカイブを伸長します。

    $ unzip -a ...../docbook-4.2.zip

    (アーカイブは現在のディレクトリに伸長されます。)

  4. /usr/local/share/sgml/catalogファイル(もしくはインストール時にjadeに指定したファイルに)に以下の1行を付け加える編集を行います。

    CATALOG "docbook-4.2/docbook.cat"

  5. ISO 8879 character entities archiveをダウンロードし、伸長してできたファイルをDocBookのファイルと同じディレクトリに置きます。

    $ cd /usr/local/share/sgml/docbook-4.2
    $ unzip ...../ISOEnts.zip

  6. DocBookとISOファイルを置いたディレクトリで以下のコマンドを実行します。

    perl -pi -e 's/iso-(.*).gml/ISO\1/g' docbook.cat

    (この操作によって、DocBookカタログファイルで使われる名称と実際のISO文字エンティティファイル間での重複が整理されます。)

J.2.5.3. DocBook DSSSLスタイルシートのインストール

スタイルシートのインストールは、配布物を伸長して、例えば/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を参照してください。

J.2.5.4. JadeTeXのインストール

JadeTeXをインストールし、使用するには、toolsgraphicsパッケージ、BabelAMSフォントおよびAMS-LaTeXPSNFSS拡張と"the 35 fonts"の付属キット、PostScriptを生成するdvipsプログラム、マクロのパッケージとしてfancyhdrhyperrefminitocurlおよびot2encがサポートされているTeXLaTeX2eが既にインストールされていなくてはなりません。 これら全ては、親愛なる隣人でもあるCTANサイトにあります。 TeXの基本システムのインストールはこの紹介文の範囲をはるかに超えています。 どのようなシステムにせよ、稼働するTeXのバイナリパッケージがどこかにあるはずです。

JadeTeXPostgreSQLの文書のソースに適用する前に、TeX内部データ構造の容量を増やさないといけない場合があります。 この件に関しての詳細はJadeTeXのインストールの説明のところに記載されています。

この操作を終えたところでJadeTeXをインストールできるようになります。

$ gunzip jadetex-xxx.tar.gz
$ tar xf jadetex-xxx.tar
$ cd jadetex
$ make install
$ mktexlsr

最後の2つの入力はrootになって行います。

J.2.6. 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パッケージの一部です。 自動検出できなかった場合、環境変数JADENSGMLSを渡すことで、これらのプログラムの場所を指定することができます。 "DocBook V4.2"が見つからない場合はDocBook DTDキットをjadeが見つけられない場所に置いたか、もしくはカタログファイルが正しく設定されていません。 前述のインストレーションのヒントを参照してください。 DocBookスタイルシートはいくつか比較的標準となっている場所から探されますので、別の場所に置いた時には、DOCBOOKSTYLE環境変数でその場所を設定してからconfigureを後で再実行します。