これはExpat、1997年に James Clarkによって開始された、 XMLを解析するためのCライブラリです。 Expatはストリーム指向のXMLパーサーです。つまり、解析を開始する前に ハンドラーをパーサーに登録します。これらのハンドラーは、パーサーが 解析中のドキュメント内で関連する構造を発見したときに呼び出されます。 開始タグは、ハンドラーを登録できる構造の種類の一例です。
Windowsユーザーは、
expat_win32 パッケージを
使用してください。このパッケージには、プリコンパイル済みライブラリと実行ファイル、
および開発者向けのソースコードが含まれています。
Expatはフリーソフトウェアです。
このパッケージに同梱されている
COPYING
ファイルに記載されたライセンス条件に従って、コピー、配布、改変を行うことができます。
このライセンスはMIT/Xコンソーシアムライセンスと同じものです。
Gitリポジトリからチェックアウトして Expatをビルドする場合は、GNU autoconf と libtool ツールを使用して configure スクリプトを 生成するスクリプトを実行する必要があります。これを行うには、autoconf 2.58 以降が 必要です。次のようにスクリプトを実行してください:
./buildconf.sh
これが完了したら、ソース配布物からビルドする場合と同じ手順に従います。
ソース配布物からExpatをビルドするには、まず最上位の配布ディレクトリで 設定用シェルスクリプトを実行します:
./configure
configure に指定できるオプションは多数あります(configure を --help オプション付きで
実行すると確認できます)。しかし、最も重要なのはインストールディレクトリを設定するものです。
デフォルトでは、configure スクリプトは libexpat を /usr/local/lib に、expat.h を
/usr/local/include に、xmlwf を /usr/local/bin にインストールするように設定します。
例えば、/home/me/mystuff/lib、/home/me/mystuff/include、/home/me/mystuff/bin に
インストールしたい場合は、次のように configure に指定できます:
./configure --prefix=/home/me/mystuff
もう1つの興味深いオプションは、行番号と列番号、および全体のバイトインデックスに 64ビット整数サポートを有効にするものです:
./configure CPPFLAGS=-DXML_LARGE_SIZE
ただし、このような変更はABIを変更する破壊的変更となるため、 一般的な使用(Linuxディストリビューションの一部など)には推奨されず、 特別な要件を持つビルド向けです。
configure スクリプトを実行した後、make コマンドでビルドが行われ、
make install で適切な場所にインストールされます。追加の make オプションについては、
Makefile を参照してください。インストール先のディレクトリに書き込み権限が
必要であることに注意してください。
既定のUTF-8ではなくUTF-16エンコーディングでドキュメント情報を提供するように
Expatをビルドすることに興味がある場合は、次の手順に従ってください
(make distclean を実行した後)。
xmlwfはこのコンパイルモードを(まだ)サポートしていないため、
--without-xmlwf を指定して設定することに注意してください:
Makefile.am ファイルを一括パッチして、ライブラリ名に libexpatw.la を使用する:
find -name Makefile.am -exec sed -e 's,libexpat\.la,libexpatw.la,' -e 's,libexpat_la,libexpatw_la,' -i {} +
automake を実行して Makefile.in ファイルを書き換える:
automake
UTF-16出力をunsigned short(バージョン/エラー文字列はchar)として出力する場合、次を実行:
./configure CPPFLAGS=-DXML_UNICODE --without-xmlwf
UTF-16出力を wchar_t(バージョン/エラー文字列を含む)として出力する場合、次を実行:
./configure CFLAGS="-g -O2 -fshort-wchar" CPPFLAGS=-DXML_UNICODE_WCHAR_T --without-xmlwf
注: 後者は、libc も -fshort-wchar 付きでコンパイルされている必要があります。
make を実行(xmlwfは除外されます)。
DESTDIR の使用がサポートされています。次のように機能します:
make install DESTDIR=/path/to/image
これは、メイクファイル内で設定された DESTDIR を上書きします。変数設定の優先順位は次のとおりです:
注: これはExpatライブラリ自体にのみ適用されます。xmlwfとテストのUTF-16バージョンの ビルドは現在サポートされていません。
autoconf を使用して設定するプロジェクトでExpatを使用する場合、
conftools/expat.m4 のプロービングマクロを使用して、Expatを組み込む方法を
決定できます。詳細については、そのファイルの先頭にあるコメントを参照してください。
リファレンスマニュアルは、この配布物内の doc/reference.html ファイルにあります。
make install を実行(やはりxmlwfは除外されます)。