kcc for Cygwin インストールメモ


0. はじめに

kcc とは漢字コード変換フィルターである。
ファイルの文字コードを判別する為に使われる事が多い。
2006/05/04 現在、Cygwin パッケージは存在しないので
ソースからインストールを行った。

ちなみに、文字コードの判別だけが目的なら ack や
nkf の -g オプション (>= nkf Version 2.0.5) という選択肢もある。


1. 環境

OSWindows Xp
Cygwin1.5.19-4
gcc3.4.4

2. ソースの入手

Cygwin 上ではソースから直接コンパイルできないので
rpmfind.net から kcc の srpm をダウンロードする。
今回は Fedore Core 4 の kcc-2.3-24 を使用した。

ftp://rpmfind.net/linux/fedora/core/4/SRPMS/kcc-2.3-24.src.rpm ( RPM resource kcc )

ちなみにソースは以下からダウンロード可能。

ftp://ftp.sra.co.jp/pub/os/linux/JE/sources/base/kcc.tar.gz

3. インストール

3.1 rpm の解凍

rpm2cpio と cpio を使う。

$ mkdir rpmtemp
$ cd rpmtemp
$ rpm2cpio ../kcc-2.3-24.src.rpm | cpio -id


3.2 パッチ処理

kcc.spec を参照しながら順番にソースにパッチを充てていく。

$ tar xzf kcc.orig.tar.gz
$ cp kcc-2.3-dontstrip.patch kcc-2.3-varargs.patch kcc-2.3-fix-segv.patch kcc
$ cd kcc
$ patch < kcc-2.3-dontstrip.patch
$ patch < kcc-2.3-varargs.patch
$ patch < kcc-2.3-fix-segv.patch

3.3 Makefile の編集

個々の環境に合わせてコマンドや man のインストールパスを編集する。

- 編集前 -
...
#       @(#)Makefile 2.3 (Y.Tonooka) 3/28/94

          BINPATH = /usr/local/bin
          MANPATH = /usr/man
          JMANDIR = ja_JP.ujis
...

- 編集例 -
...
#       @(#)Makefile 2.3 (Y.Tonooka) 3/28/94

          BINPATH = /usr/local/bin
          MANPATH = /usr/local/share/man
          JMANDIR = ja
...

3.4 コンパイルとインストール

後は make して終了。

# make install
# make install.man


4. リファレンス

気まぐれ開発日誌 (2004/10/15)

B忘log −Hi-LoのBlog−: kcc (2004/07/01)

2006/05/05 作成