Table of Contents
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
補遺
-
ドキュメント、ソースコード上では、作者のメイルアドレスが akira@sra.co.jpとなっていますが、 退職して無効アドレスになっています。現在のアドレスは akira@p08.itscom.net ですので、連絡等はこちらにどうぞ。 ですが、現時点では手元にOS/2環境がありませんので、 修正要望等には応じることができません。悪しからず。
-
libiconvは当初は Bruno Haible氏の 独自開発でしたが、現在ではGNUに移されてGNUのライブラリとして 保守されています。OS/2移植は初期のバージョンのもので、 libiconvはその後バージョンアップを繰り返してきているため、 現在のものには対応していません。