Xalan使おう

Xalanとは

Apacheプロジェクト提供のXPathを使うためのライブラリです。XMLのパースにXercesを使うため、Xercesを先に入れておく必要があります。

Xercesのインストールについては、Xercesを使おうを参照してください。また、事前に以下のインストールの項目、wchar_tの扱いを読んでおいて下さい。

インストール for VC 8(VisualStudio 2005)

2006/02/26現在の最新版、Xalan 1.10はVC8に未対応なので、少々面倒な手続きが必要になります。

Xerces、ICU(使う場合)、Xalanでwchar_tを組込型として扱うか、というオプションを統一しておく必要があります。

VC8では、wchar_tを組込型として扱うのがデフォルトなので、Xercesは、「いいえ」になっているので、Xerces側を「はい」にしてビルドしておくと良いでしょう。

また、ICUを使う場合は、事前にICUROOTという環境変数にICUのルートディレクトリが設定されている必要があります。

その後、wchar_tの動きをXercesと合わせるため、[XALAN_FOLTER]/c/src/xalanc/Include/VCPPDefinitions.hppの#endifの前に下記の3行を追加しましょう。

#ifdef _NATIVE_WCHAR_T_DEFINED
#define XALAN_USE_NATIVE_WCHAR_T
#endif // _NATIVE_WCHAR_T_DEFINED

以上で、準備は終了です。面倒な人のために、上記の対応を行ったソースをxalan-1.10_vc8.zipに置いておきます。利用は自己責任でお願いします。

後は、

の順にコンパイルしていけば、ライブラリが出来上がります。XalanMsgLibのビルド時に、MsgCreatorのビルドで作成された、MsgCreator.exeを作って、インクルードファイルを作成するため、MsgCreatorが必要とするXerces_xx.dllがPATHに必要です。また、ICUを使う場合は、ICUのツールも利用するためICUROOTを正しく設定しておく必要があります。

[XALAN_FOLTER]/c/Build/Win32/VC8/(Debug|Release)に出来上がる、XalanMessages_1_10.x、Xalan-C_1_10(D).xを[XALAN_FOLTER]/c/libなどへ入れておくと、後で便利だと思います。

使い方

Xalanを使うには、

でXalanが使えます。