Download
最新版はsanctuary-2.0.3.tar.bz2です。リリースノートと過去のリリースはRelease Notesから取得してください。
必要な構成
ビルドできたプラットフォーム
以下のプラットフォームでビルドを確認しました(i386アーキテクチャのみ)。
- FreeBSD 6.3
- Ubuntu 9.04
- openSUSE 10.3
imake、AntのどちらかでSanctuaryをビルドできます。
ビルドに必要なもの(Ant編)
ビルドは次のものに依存しています。
各プラットフォームではそれぞれ次のように準備するのが簡単です。
- FreeBSD 6.3
- 以下のportsをインストールしておきます。
-
- java/jdk16
- devel/apache-ant
- Ubuntu 9.04
- 一般的な開発環境に加え、次のパッケージをインストールしておきます。
-
- sun-java6-jdk
- ant
- ant-optional
- openSUSE 10.3
- 一般的な開発環境に加え、次のRPMをインストールしておきます。
-
- java-1_6_0-sun-devel-1.6.0.u7-1.1
- ant-1.7.0-30
- ant-nodeps-1.7.0-37
- ant-trax-1.7.0-37
ビルドに必要なもの(imake編)
ビルドは次のものに依存しています。
- Java SE Development Kit(JDK)6
- imake (X.Org/XFree86)
- libxslt 1.1
各プラットフォームではそれぞれ次のように準備するのが簡単です。
- FreeBSD 6.3
- 以下のportsをインストールしておきます。
-
- java/jdk16
- devel/imake
- textproc/libxslt
- Ubuntu 9.04
- 一般的な開発環境に加え、次のパッケージをインストールしておきます。
-
- sun-java6-jdk
- xutils-dev
- xsltproc
- openSUSE 10.3
- 一般的な開発環境に加え、次のRPMをインストールしておきます。
-
- java-1_6_0-sun-devel-1.6.0.u7-1.1
- xorg-x11-devel-7.2-103.4
- libxslt-1.1.20-41
実行に必要なもの
実行するには次のものをインストールしておく必要があります。
- Java SE Runtime Environment (JRE) 6
ビルドとインストール
コマンドラインからjava
を実行したとき、SunのJVMを実行するように環境を設定しておきます★1。
この後はビルドツールによって手順が異なります。
Antでビルドする場合
次の手順でビルド、インストールします。
% tar jxf sanctuary-VERSION.tar.bz2
% cd sanctuary-VERSION
% ant
% su
# ant -Dprefix=path install ★2
imakeでビルドする場合
次の手順でビルド、インストールします。
% tar jxf sanctuary-VERSION.tar.bz2
% cd sanctuary-VERSION
% xmkmf -a
% make
% su
# make DESTDIR=path install ★2
★1 FreeBSDではjavavm(1)
を参照の上、環境変数JAVA_
(またはJAVA_
とJAVA_
)を適切に設定してください。Linuxではディストリビューションによって異なりますが、少なくても環境変数PATH
を適切に設定することで実行するJVMを切り替えることができます。その後、次のように表示されることを確認してください。
% java -version
java version "1.6.0_13"
Java(TM) SE Runtime Environment (build 1.6.0_13-b06)
Java HotSpot(TM) Client VM (build 1.6.0_13-b06, mixed mode)
★2 path
には絶対パス(/usr/local
や/home/foo
など)を指定します。インストールされるファイルは次の通りです。
path/bin/sanctuary
path/lib/sanctuary/sanctuary.jar
使用方法
ヘッダファイルの生成
次のようにXMLファイルを指定してコマンドを実行するとヘッダファイルを生成します。
% sanctuary --code XMLファイル...
コマンドを実行したディレクトリを起点として、生成するヘッダファイルのパスはパッケージ名/クラス名.h
になります。ただし、パッケージ名に含まれるアンダースコア(_
)はスラッシュ(/
)に展開されます。
デフォルトでC++からインクルードできるヘッダファイルを生成します。C++をサポートしないようにする場合は、次のようにオプション--without-c++
を指定します。
% sanctuary --code --without-c++ XMLファイル...
HTMLファイルの生成
次のようにXMLファイルを指定してコマンドを実行するとHTMLファイルを生成します。
% sanctuary --html XMLファイル...
コマンドを実行したディレクトリにパッケージ名_クラス名.html
を生成します。さらに、インデックスとなるページとしてindex.html
を生成します。
TeXファイルの生成
次のようにXMLファイルを指定してコマンドを実行するとTeXのソースファイルを生成します。
% sanctuary --tex XMLファイル...
コマンドを実行したディレクトリにパッケージ名_クラス名.tex
を生成します。さらに、sanctuary.tex
とsanctuary.sty
を生成します。
dviファイルを生成するには、同じディレクトリにsanctuary.tex
とsanctuary.sty
を読み込むTeXファイルを用意する必要があります。配布物に含まれているsample.tex
を用いてdviファイルを生成するには、次のようにコマンドを実行します。
% cp どこか/sanctuary/sample.tex .
% platex sample.tex
sample.tex
とTutorialで紹介したサンプルから生成したPDFファイルのサンプルを用意しておきました。
スタブの生成
次のようにXMLファイルを指定してコマンドを実行するとスタブとなるソースコードを生成します。
% sanctuary --stub XMLファイル...
コマンドを実行したディレクトリを起点として、生成するスタブのソースファイルのパスはstub/パッケージ名/クラス名.c
(と.h
)になります。ただし、パッケージ名に含まれるアンダースコア(_
)はスラッシュ(/
)に展開されます。
出力ディレクトリの変更
例えばHTMLファイルを生成する場合、次のようにしてファイルを生成するディレクトリを変更できます。
% sanctuary --html --output-dir=ディレクトリのパス XMLファイル...
ディレクトリが存在しない場合は生成します。相対パスの場合はカレントディレクトリが基点になります。
入力ファイルの指定
XMLファイルのパスのリストを記述したファイルをオプションに指定し、そのファイルに含まれるXMLファイルを入力とすることができます。例えば、次のような内容のファイルがあるとします。
foo/Bar.xml
foo/Baz.xml
このファイルを次のように指定することで、foo_Bar
とfoo_Baz
のHTMLファイルを生成することができます。
% sanctuary --html --input-file=ファイルのパス
--input-file
オプションは通常の引数による入力ファイルの指定と併用することができます。
バージョンの表示
次のようにコマンドを実行するとバージョンを表示します。
% sanctuary --version
バージョンはメジャー.マイナー.リビジョンの形式で、DTDに互換性がなくなるとメジャー番号が増加して、マイナー番号とリビジョン番号は0に戻ります。DTDが後方互換性を保ったまま変更された場合はマイナー番号が増加して、リビジョン番号は0に戻ります。