人工無脳は考える 人工無脳は考える | 掲示板 | 資料 | アーカイブ

2005/02/19; revised 2005/02/26

人工無脳開発環境

PerlやRubyは書籍も多く手軽に利用でき、強力な正規表現とハッシュを持つことから人工無脳用開発の言語として適している11Ruby版人工無脳入門

2Perlメモ - 日本語を扱う(大崎博基氏)に詳しい解説がある。
。このうち、Perlを用いたWindows NT/2000/XP 上での開発環境には以下のような選択肢がある。
開発環境主なパッケージ利点と欠点
Windows ActivePerl apache 茶筌 Windows版 インストールが簡単で高速だが、茶筌との通信が難しい
Cygwin Cygwin (+gcc +make +perl +apache) Cygterm chasen-2.2.9 ipadic-2.5.1 インストールにunix系の知識を要し、動作がやや遅い。完全なEUC環境を用意できる
MinGW Mingw(+gcc +make) ActivePerl apache 茶筌 最新版chasenを導入できるが環境構築は一番難しい

この中でのおすすめはCygwinである。わざわざCygwinのような擬似unix環境を用いる理由は、Perlを使った人工無脳の開発では今のところEUC以外の漢字コードが使えないことが一番大きい2。その他には、茶筌やPostgreSQLを導入しやすいこと、ActivePerlではflock()がきちんとサポートされていないこと、などがある。そこで、以下にCygwinをWindows上に導入し、人工無脳が開発できる最低限の環境を整えるための手順を示す。

1. Cygwinの導入

Cygwinsetup.exeを実行する。よくあるインストールウィザードが起動するのでcygwinをインターネットから直接インストールするよう選択する。進んでいくとパッケージ選択画面が表示される。
Cygwin Setup - パッケージ選択画面

ここで、以下のファイルを選択する。gccなどを選択すると自動的にいくつかのモジュールが選択状態になるが、それはそのままでよい。

今は必要ないが、このリストにはPostgresSQL、Ruby、wget、ircなど関係の深いものがいくつも含まれている。選択を確認したら[次へ]で進む。するとダウンロードとインストールが進み、C:\cygwinというフォルダの下にunix系でおなじみのディレクトリ構造が構築され、インストールしたプログラムが実行可能な状態になる。

2. Cygtermのインストール

Cygtermをダウンロードし、アーカイブソフト(windows用でもtgz形式をサポートしていればよい)を用いてソースを/tmpなどに展開する。展開先のディレクトリに含まれるMakefileをエディタで開き、先頭付近のBINDIR=にインストール先のディレクトリ名を入れる。例えばBINDIR=/usr/binなどでいい。cygwinを起動し、make installする。

$ cd /tmp/cygterm106
$ make install

さらに/usr/bin/cygterm.cfgをエディタで開き、TERM=の部分を好みのターミナルプログラムに合わせる。なお、TeratermでTTSSHが有効になっている場合は上手く起動しないので、

<cygterm.cfg>
TERM = C:\Program Files\ttermpro\ttermpro.exe %s %d /KR=EUC /KT=EUC /F=c:\cygwin\usr\var\cygterm\TERATERM.INI

</usr/var/cygterm/TERATERM.ini>←元のteraterm.iniのコピーを置く
[TTSSH]
Enabled=0

というような調整が必要である。

3. 茶筌のインストール

最新版の茶筌chasen-2.3.3は諸般の事情33Dartをインストール→makeしてもlibiconvで引っかかる→libiconvをmake→gettextをmake→libiconvをmake(再)→・・・とゆーような調子で、結局断念してしまったでcygwinへのインストールは難しい。動かない最新版より動く安定版、ということで少し前のバージョンchasen-2.2.9ipadic-2.5.1をダウンロードする。それぞれを/tmpなどに展開した後、半角文字列をひとかたまりの品詞として扱うようにするパッチchasen-2.2.9-nmz.diffを/tmp/chasen-2.2.9にコピーする。

$ cd /tmp/chasen-2.2.9/
$ patch -p2 < chasen-2.2.9-nmz-diff
$ ./configure
$ make
$ make install

$ cd /tmp/ipadic-2.5.1/
$ ./configure
$ make
$ make install

このような手順でインストールができる。

4. Perlの設定

/tmp/chasen-2.2.9/perlにあるMakefile.PLを編集し、'LIBS' =>とある行を

'LIBS' => ['-L/usr/local/lib -lchasen']

に書き換える。さらに

$ cd /tmp/chasen-2.2.9/perl
$ perl Makefile.PL
$ make
$ make install

$ cd /usr/local/bin
$ ln /bin/perl perl ←ついでにリンクを作っておく

とすることでPerlからchasenを利用できるようになる。

5. テスト

それでは以下のような内容のファイルを作り、test.plとしよう。

#/usr/local/bin/perl
use Text::Chasen;
Text::ChaSen::getopt_argv('cahsen','-F','%m ');
$string=Text::ChaSen::sparse_tostr("日本語文字列の分かち書きテスト");
print $string;

でおもむろにcygtermを起動し、新たに開いた端末でこのスクリプトを動かし、

$ perl test.pl
日本語 文字 列 の 分かち書き テスト

というような出力が得られたら全てのインストールが成功している。

戻る