次のページ 前のページ 目次へ

3. インストール方法

いくつかのパッケージは適切にインストールすれば「ローカライズ可能」です。 それらを含むプログラムは、あなたのネイティブな言語を話せるようにすること ができます。それらの多くのパッケージは GNU `gettext' を使っています。 他のパッケージは、GNU `gettext' より以前の国際化するための独自の方法を持 っています。

デフォルトでは、このパッケージはメッセージの翻訳をできるようにするために インストールされます。システムが `catgets' (これを使用することをインスト ーラが選択した場合)または `gettext'関数のいずれを利用可能かが、自動的に 検出されます。 いずれもだめなら、GNU `gettext' 自身のライブラリが使われます。このライブラ リはこのパッケージ内に全て含まれ、通常 `intl/' サブディレクトリにあります から、事前に GNU `gettext' パッケージをインストールする必要は *ありません*。 インストーラは、設定時に特別なオプションを使用して、デフォルトの動作を変更 することができます。 以下のコマンドは、

     ./configure --with-included-gettext
     ./configure --with-catgets
     ./configure --disable-nls

それぞれ

   ○ 既存の `catgets' または `gettext' をバイパスし、このパッケージの
      国際化ルーチンを使用する
   ○ `catgets' 関数(ローカルシステムで見つかった場合)を使用する
   ○ *全く* メッセージを翻訳しない
です。

既にシステム上に GNU `gettext' がインストールされていて、且つ新しいパッケ ージの設定をオプション無しで実行すると、`configure' はたぶんそれ以前にビル ドしてインストールしてある `libintl.a' ファイルを検出し、これを使うことを 決めるでしょう。これは何が望ましいかということではありません。 GNU `gettext' ライブラリの、より新しいバージョンを使うべきです。つまり このパッケージのライブラリの方が新しいことを `intl/VERSION' ファイルが 示しているなら、

./configure --with-included-gettext

を使って、自動検出をやめるべきです。

デフォルトでは、設定のプロセスで `catgets' 関数のテストはされず、従って それらは使用されません。理由は既に述べました:`catgets' の上でのエミュレー ションでは GNU `gettext' ライブラリによって提供される全ての拡張を提供する ことはできないからです。それにもかかわらず `catgets' 関数を使いたい場合は、

./configure --with-catgets

を使って、`catgets' のテストを行うようにします(これはあなたのシステムで `catgets' が利用できない場合でも危害はありません)。このオプションを本当に 選択するなら、私達はその理由を聞きたいと思います。というのは、私達自身が それを良いとは思えないからです。

国際化パッケージには、通常多くの `po/LL.po' ファイルがあります。 LL は言語を識別する ISO 639 の 2 文字のコードです。 `configure' 時に `--disable-nls' スイッチを使って翻訳が禁止されていない 限り、全ての利用可能な翻訳がパッケージと共にインストールされます。 しかし、設定に先だって環境変数 `LINGUAS' をセットすることにより、インス トールされるセットを制限できます。`LINGUAS' は空白で分離された 2 文字の コードを含むリストで、どの言語を許可するかを表しています。

【訳注】言語名を表すコード(ISO 639)は、下記にあります。
http://www.ics.uci.edu/pub/ietf/http/related/iso639.txt
国または地域を表すコード(ISO 3166)は、下記にあります。
http://userpage.chemie.fu-berlin.de/diverse/doc/ISO_3166.html
【訳注終り】


次のページ 前のページ 目次へ