このページで
libslaxライブラリと拡張ライブラリの概要
libslax ライブラリ
libslax は「新しい BSD ライセンス」を使用した SLAX 言語のオープンソース実装です。libslax は C で記述され、libxml2、libxslt、libexslt ライブラリの上に構築されています。
libslax ディストリビューションのコアは libslax ライブラリです。ライブラリには、SLAX ファイルを読み取る SLAX パーサー、SLAX ファイルを書き込む SLAX ライター、デバッガ、プロファイラ、SLAX プロセッサー(slaxproc)コマンド ライン ツールが組み込まれています。パーサーは、フックを使用して SLAX ソース ファイルを XSLT ツリー (xmlDoc Uml) に xsltSetLoaderFunc()
変換します。ライターは、XSLT ツリー (xmlDoc Uml) を SLAX ステートメントを含むファイルに変換します。
libslax拡張ライブラリ
libslax は、拡張ライブラリを動的に読み込むサポートを提供します。libslax ディストリビューションには、 、 db
curl
、 os
、および xutil
拡張ライブラリが含bit
まれています。デフォルトの拡張ライブラリーのソース・ファイルは、ディストリビューションの libslax-release/extensions ディレクトリーに保管されます。libslax ディストリビューションでサポートされている既定の拡張ライブラリ以外にも、追加の拡張ライブラリを提供することができます。拡張ライブラリの場所は、ビルド時に静的に指定することも、実行時に動的に指定することもできます。
既定では、libslax は /usr/local ディレクトリに、拡張ライブラリ ファイルを含むアーキテクチャ非依存ファイルをインストールします。具体的には、libslax は /usr/local/lib/slax/extensions ディレクトリに拡張ライブラリをインストールします。ビルド時に拡張ライブラリに別のインストールディレクトリを指定しない場合、SLAX プロセッサはスクリプトの実行時にこのディレクトリをチェックして拡張ライブラリをチェックします。
ビルド時に拡張ライブラリの場所を指定するには、いくつかの方法があります。インストール中に、ライブラリを含むすべてのインストールファイルに/usr/local以外のディレクトリプレフィックスを指定するには、 コマンドを./configure実行し、ファイルをインストールする場所を指定する オプションを含--prefix=prefix
めます。デフォルトの拡張ライブラリは /lib/slax/extensions ディレクトリーにprefixインストールされ、SLAX プロセッサーはこのディレクトリーでスクリプト実行時に拡張ライブラリーがないかチェックします。拡張子ライブラリファイルのみをユーザー定義の別の場所にインストールするには、 コマンドを./configure実行し、拡張ライブラリの場所を指定する オプションを含--with-extensions-dir=dir
めます。次に、SLAX プロセッサは、スクリプトの実行時に、指定された拡張機能ライブラリのディレクトリを自動的にチェックします。libslax のインストールの詳細については、 libslax ディストリビューションのダウンロードとインストールを参照してください。
インストール完了後に拡張ライブラリの場所を動的に指定するには、いくつかの方法があります。SLAXEXTPATH 環境変数を定義または更新して、追加の拡張ライブラリのディレクトリの場所を含めることができます。変数値は、コロンで区切られたディレクトリーのリストです。SLAX プロセッサは、スクリプトの実行時にこれらのディレクトリの拡張機能ライブラリを自動的にチェックします。または、 または -L
オプションを付けた コマンドを使用してスクリプトを実行する際に、拡張機能ライブラリのslaxproc
場所を--lib
指定することもできます。
要約すると、拡張ライブラリの場所は、次のいずれかの方法で SLAX プロセッサに提供されます。
デフォルトでは、 /usr/local/lib/slax/extensions ディレクトリに含まれています。
lib/slax/extensions/ ビルド時に指定された オプションで
./configure --prefix
指定されたディレクトリの下。ビルド時に指定された オプションで
./configure --with-extension-dir
指定されたユーザー定義ディレクトリ内。SLAXEXTPATH 環境変数のコロンで区切られたリストに含まれるディレクトリ内。
コマンドの または
-L
引数slaxproc
を--lib
使用して提供されるディレクトリ。