Windowsで作ったZIPの圧縮ファイルを受け取ってもいいように、FedoraにUbuntu-JPのunzip文字化け対策パッチを当てて使っています。しかし、Fedora9だと全く効果がない。解凍すると日本語の名前が文字化けしまくりでんがな。
んでまあ、C言語なんて「Hello World」ぐらいしか知らないのですが、分からんなりにソースコードを読むと、何となくロケールの問題っぽいような気がしたわけであります。Fedoraで locale コマンドを打ってみる
$ locale
LANG=ja_JP.utf8
ん? なんかこれまでと違う気がする。Ubuntu だと
$ locale
LANG=ja_JP.UTF-8
おお、微妙に違う。試しに
export LANG=ja_JP.UTF-8 したらきちんと動いた。すなわち
UTF-8 (F8,Ubuntu) <-> utf8 (F9)
これが原因か…
その辺を考慮し、パッチを修正してRPMを作りました。
unzip-5.52-9.fc9_ja.i386.rpm
unzip-5.52-9.fc9_ja.x86_64.rpm修正といっても適当に「setlocale(LC_CTYPE, "");」を「ja_JP.UTF-8」に固定しただけ。とりあえずちゃんと動作してるっぽい。なんでもやってみるもんだ。
lha は前作ったのがそのまま使える。lzh なんてほとんど見ないけど
→
lha