Akira's Commentary


What is libiconv

FreeBSDなどには、汎用の文字コードの変換ライブラリとして 'iconv'というライブラリがあります。 これは、複数の文字コードセット、文字コードエンコーディング間の 変換を行なうものです。 Unicode系の文字エンコーディングのUTF-8とかUTF-16を 取り扱うには必須ともいえるものでしょう。

OS/2上で'iconv'ライブラリが必要になったので、 LGPLでリリースされている Bruno Haible氏の 'libiconv'を OS/2に移植しました (2)。 現在のバージョンでサポートされている 文字セット、エンコーディングについては こちらの表をご覧ください。

先日(10/24)、libiconvの新しいバージョン(libiconv-1.4)が リリースされました。 これには、(v1.3へのパッチに基づいて)OS/2サポートが組み込まれています。 そこで、新しいバージョンにあわせてこのページを書き換え、 以前のページは旧ページに移しました。 どのように移植したか(v1.3へのパッチ)に興味のあるかたは、 旧ページの方を御覧ください。 ライブラリをすぐに使いたい、という方は、 このページを御覧ください。

バイナリ

libiconv-1.4のソース(OS/2対応済)から、 バイナリパッケージを作成しました (1)。

これにはヘッダ、インポートライブラリ、DLLが含まれています。 また、パッケージのテストプログラム(コード変換プログラム) の'iconv.exe'も含めておきました。

iconv の使い方は簡単で、

iconv -f From-Encoding -t To-Encoding < From-File > To-File

として使います。使用できるエンコーディングについては、 こちらのエンコーディング一覧表 を御覧ください。

ビルド

新しいlibiconv-1.4には、OS/2でのビルド方法も記載されています。 ソースパッケージの'README.os2'を御覧ください。

なお、ソースパッケージのテキストファイルは 皆UNIXテキストになっています。 ビルド、インストールについては何も問題ありませんが、 テスト(make -f Makefile.os2 check)時には、 testsディレクトリのREXXスクリプト実行でエラーが出ますので、 DOSテキストに変換しておく必要があります。

      check-stateful.cmd
      check-stateless.cmd
      check-translit.cmd