| ホーム >> | UNIX >> | namazu |
nkf(日本語文字コード変換アプリ)
:琉球大・河野氏(リンク切れ) →Sourceforge.jp
chasen-2.2.9.tar.gz(Chasen、茶筌 、形態素解析システム)
:奈良先端科学技術大学院大学自然言語処理学講座
ipadic-2.4.4.tar.gz(Chasenで用いる辞書)
:奈良先端科学技術大学院大学自然言語処理学講座
Text-ChaSen-1.03.tar.gz(Text::ChaSen1、Chasenをperlから用いるためのモジュール)
:Knok's page on DAIO net.
namazu-2.0.10.tar.gz (本体)
:全文検索システム Namazu
Sorceforge.jp から nkf20.tgz をとってきます。ディレクトリ中のINSTALLの説明書に従って、
% make
とする。コンパイルが成功したら nkf を適当なところにコピーする。
% sudo cp nkf /usr/local/bin/
% cd chasen-2.2.9
% ./configure -host=powerpc-apple-bsd
% make
% sudo make install
(注 2003.7.3) 最新版だった Chasen 2.3.1のソースを持ってきて configure 中にエラーでとまってしまった。メッセージを見ると、Darts というのをインストールすれば良さそう。darts-0.1.tar.gz をダウンロードしインストールした。
% ./configure
% make
% make check
% sudo make install
この後、再度 configure すると今度は iconv をインストールするようにいわれる。リンク先からソースを取ってきて、
% ./configure
% make
%sudo make install
次に辞書のインストールを行う。
% cd ../ipadic-2.4.4
% ./configure
% make
% sudo make install
次に Text-Chasen をインストールします。
% cd Text-ChaSen-1.03
Makefile.PL を開いて次のように修正します。
'LIBS' => ['-L/usr/local/lib -lchasen']
あとは、
% perl Makefile.PL
% make
% sudo make install
まず File-MMagic をインストールする。これは NAMAZU のパッケージに含まれている。
% cd namazu-2.0.12/File-MMagic
% perl Makefile.PL
% make
% sudo make install
次に NAMAZU のインストール。
% cd ../
% ./configure -host=powerpc-apple-bsd
次にmakeを行う。namazu-2.0.12 では
% make
% sudo make install
で問題なくコンパイルは終了する。
MacOSX においてウエブサイトのデータを NAMAZU で検索するための設定を行う。
NAMAZU の本体は、
/usr/local/bin/namazu
NAMAZU のインデックス作成コマンド mknmz も同じ場所にインストールされている。
NAMAZU をウエブサイトから使うための CGI スクリプトを、次のようにコピーしておく。
% cp /usr/local/libexec/namazu.cgi /Library/WebServer/CGI-Executables/
MacOSXではデフォルトでは CGI-Executables にのみ CGI の実行許可が付いている。(設定で変更できると思う)また、NAMAZU の設定ファイル(.namazurc)も CGI-Excutables にコピーする。
% cp /usr/local/etc/namazu/namazurc-sample /Library/WebServer/CGI-Executables/.namazurc
さらに、インデックス作成コマンド mknmz 用の設定ファイルはホームディレクトリにコピーしておく。
% cp /usr/local/etc/namazu/mknmzrc-sample ~/.mknmzrc
(.mknmzrc の置き場所は、/usr/local/etc/mknmz/mknmzrcでもよいし、任意の場所に置いて mknmz を実行する時にオプションで指定することも出来る)
たとえば、ホームページの書類が、
/Library/WebServer/Documents/
にあるとする。NAMAZUのデータベースを作る場所を、
~/namazu/index/
とする。この namazuディレクトリのパーミッションは 755 にしておく。
検索画面表示用のファイルは mknmz コマンドを使った時に自動的に作られる。デフォルトでは、
/usr/local/share/namazu/template
にあるテンプレートを用いて、データベース作成日時や、ファイル数などの情報を書き加えたものをインデックスファイルと同じ場所に作成する。もし検索画面をかえたいならば、上記のテンプレートを適当なディレクトリ (DIR)にコピーして中身を編集する。そして、データベース作成の時にオプションで指定する。
% mknmz --template-dir=DIR
次に CGI-Excutables に入れておいた .namazurc を編集する。設定部分はあらかじめ # を用いてコメントアウトされているのでそれを外して書き直せば良い。書き直すところは、
Index /Users/user_name/namazu/index
# 基本インデックスファイルの場所を指定Template /Users/user_name/namazu/index
# NMZ.*.jp などの表示用テンプレートの場所。インデックスファイルと同じ場所なら、コメントアウトしておいて良いReplace /Users/user_name/Sites/ http://127.0.0.1/~user_name/
# ディレクトリをURLに変換Lang ja
# 環境変数 LANG が設定されていないときだけ読む(これを書いていないと検索画面が英語になる)
※シェルの環境変数 LANG を C にしていても、ここで ja にセットしておけば検索画面は日本語になるので、かならずこれは書いておく。
次に、mknmz に対する設定ファイル mknmzrc を書き直す。~/.mknmzrc をエディタで開いて、
$ADDRESS = 'メールアドレス';
とりあえずはここだけ変えれば良い。
インデックスを作成したいディレクトリに移動。
% cd ~/namazu/index
インデックスを作成する時に、環境変数が jp になっていないと日本語のインデックスが作成できない。もし環境変数が日本語になっていない場合は、
% setenv LANG jp
と打っておく。(bashなら export LANG=jp)
mknmz コマンドではインデックスを作成したいファイルの入っているディレクトリを指定する。インデックスはカレントディレクトリに作成される。もしインデックスを作成するディレクトリを指定したいときはオプション「-O ディレクトリ名」を用いる。
% mknmz /Library/WebServer/Documents/
これでインデックスが作成が終了する。日本語の分解に Kakasi を使うなら -k 、Chasen を使うなら -c のオプションをつける。Namazu のインストール時に Kakasi と Chasen の両方がインストールされている場合にはオプションなしでは Kakasi が用いられる。
(2003.8.17 追記)インデックスが文字化けしてしまう時には、htmlファイル群の文字コードを陽に環境変数に与えて mknmz コマンドを実行する。htmlファイルが SJISならば、
% setenv LANG ja_JP.sjis
% mknmz /Library/WebServer/Documents/
とする。(追記ここまで)
インデックス作成時に特定のディレクトリを除外する方法は2つある。例えば、 /Library/Webserver/Documents/private/ 以下を指定するには、一つは、
% mknmz '--exclude=/Library/WebServer/Documents/private/.*' /Library/WebServer/Documents/
もう一つは ~/.mknmzrc に
$EXCLUDE_PATH = "/Library/WebServer/Documents/private/.*";
と書く。
まずは「CGIが使えるようにApacheを設定する」のページを見てApacheの設定をする。MacOSX10.2の場合、Apacheの起動、終了はシステム環境設定の「共有」パネルから行うことが出来る。
うまくNAMAZUが設定されたかどうか確認するために、ブラウザから
http://127.0.0.1/cgi-bin/namazu.cgi
にアクセスする。適当な単語を入力して検索して、確認する。"127.0.0.1" の部分を "localhost" に置き換えることが出来るが、ネットワークに接続していないとエラーになった。"127.0.0.1"の場合はネットワークに接続しているか否かに関わらずアクセスできた。
日本語の文章を単語に分解するためのツールとしては、Chasen以外にKAKASIがある。以下のリンク先からソースファイルを持ってくる。
最新版は kakasi-2.3.4.tar.gz だった。あとはインストールまで次のようにやれば良い。
% ./configure -host=powerpc-apple-bsd
% make
% sudo make install
ここで configure の時に -host を付けないとエラーになってしまったので注意。
また、
から Text-Kakasi-1.05.tar.gz を採ってくる。そしてインストール
% cd Text-Kakasi-1.05
% perl Makefile.PL
% make
% sudo make install
Namazu から Kakasi を使うには、Kakasi をインストールした後に Namazu を ./configure; make する必要があります。