キーワード

プロフィール

深沢千尋

Author:深沢千尋
みなさんこんにちは、深沢千尋です。(公式ページ
文字コード【超】研究 改訂第2版NEW!」「すぐわかるPerl」「すぐわかる オブジェクト指向 Perl」の著者です。
ここでは、多くは技術的でないこと、ごくまれに技術的なことをなげやりに書いていきます。
メールは suguwakaruPerl@gmail.com まで。(アットマークは ASCII に)
Twitterはじめました。@query1000です。よろしく~

最新記事

最新コメント

最新トラックバック

月別アーカイブ

カテゴリ

検索フォーム

RSSリンクの表示

リンク

ブロとも申請フォーム

QRコード

QRコード

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

Strawberry Perl で Text::Kakasi

なんかできた。
コマンドプロンプトで cpanp と実行し

 CPAN> i Text::Kakasi

順調にソースを ftp してビルドするが、

 [ERROR] [Fri Jul 24 10:42:34 2009] MAKE failed: Bad file descriptor

と言われて終了する。

で、ここで、

 C:\Documents and Settings\ユーザー名\Application Data\.cpanplus\5.10.0\build\Text-Kakasi-2.04

にある Makefile.PL を見てみる。

'INC' => '-I/usr/local/include',
'LIBS' => ['-L/usr/local/lib -lkakasi'],

となっているだが、ここに kakasi のパスを正しく入れなければならない。

Windows 版の kakasi だが、ぼくはココから

 kakasi-2.3.4.zip

を取ってきて unzip し、C:\kakasi に置いている。
具体的に言うと、たとえば、kakasi.exe というファイルが C:\kakasi\bin\kakasi.exe というファイルとして配置されるようにする。

で、ActivePerl 5.8.9 用の Text::Kakasi の ppm だったらこれでよかったのだが、Strawberry Perl の場合は Makefile.PL を手動で訂正する。
具体的に言うと上の2行をこうする。

'INC' => '-IC:\kakasi\include',
'LIBS' => ['-LC:\kakasi\lib -lkakasi'],

これでもう1回

 CPAN> i Text::Kakasi

とするとあっさり成功する。
本当は cpanp に conf など何らかのコマンドを使ってパラメタを与えるのがより正調なのだろうが。

話が前後するが、kakasiを使うにはnamazuを入れなければならない。
さっきのディレクトリから nmz209.exe をダウンロードして実行し、オプションに無批判に肯定的に答えれば OK である。

話が前後したが、まとめると
・http://www.namazu.org/win32/ から nmz209.exe をダウンロードして実行
・同じ場所からkakasi-2.3.4.zipをダウンロードして、kakasi.exeがC:\kakasi\bin\kakasi.exeになるように展開
・http://strawberryperl.com/ から strawberry-perl-5.10.0.5.exeをダウンロードして実行
・コマンドラインでcpanpと入力
・i Text::Kakasi と入力
・C:\Documents and Settings\ユーザー名\Application Data\.cpanplus\5.10.0\build\Text-Kakasi-2.04\Makefile.PLを開いて以下のように訂正
×
'INC' => '-I/usr/local/include',
'LIBS' => ['-L/usr/local/lib -lkakasi'],

'INC' => '-IC:\kakasi\include',
'LIBS' => ['-LC:\kakasi\lib -lkakasi'],
・もう1回 cpanp のプロンプトでi Text::Kakasi と入力
これでオッケーである。

テストしてみる。

- - - - - - コ コ カ ラ - - - - - - ->8
#! perl -w
# kanhira ... 漢字のファイルを入力してひらがなにするフィルタ

use Text::Kakasi;

Text::Kakasi::getopt_argv('kakasi', '-JH', '-KH', '-isjis');
#Text::Kakasi::getopt_argv('kakasi', '-JK', '-KK', '-isjis');

while (<>) {
print Text::Kakasi::do_kakasi($_);
}
- - - - - - コ コ マ デ - - - - - - ->8

上の部分を kanhira.pl とする。

 C:\> kanhira.pl 漢字のファイル > 新しいファイル名

のようにすると、新しいファイル名に漢字のファイルの漢字部分が全部ひらがなになって出てくる。
スポンサーサイト

テーマ : 雑記 - ジャンル : その他

<< ハトガマメクテパ | ホーム | Strawberry Perl: PAR >>


コメント

コメントの投稿


管理者にだけ表示を許可する

 ホーム 


上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。