Link

Windows

依存するプログラムをインストール

GETAssoc が依存するプログラムは以下の4つです. インストールオプションとして, MeCab は UTF-8 を選んでください. それ以外は既定値で良いです.

  • httpd-2.2.15-win32-x86-no_ssl.msi
  • expat-win32bin-2.0.1.exe
  • icu4c-4_4_1-Win32-msvc9.zip
  • mecab-0.98.exe

Apache

Apache

Apache をインストールします. 初めてインストールするとファイアーウォールが警告してきますので, 「許可」しておきましょう.

eXpat

eXpat

ICU4C

ICU4C

ICU4C のダウンロード

ICU4C-2

ICU4C は展開するだけで良いです.

MeCab

MeCab

MeCab の Windows 版は下の方にある mecab-win32 を開くと出てきます.

MeCab-2

0.98 を選択

MeCab-3

インストール時に UTF-8 を選ぶ

GETAssocの展開とDLLのインストール

GETAssocをダウンロード

GETAssoc は getassoc-1.1.0.zip をダウンロード

GETAssocをインストール

GETAssoc

unzip して…

GETAssoc move

Program Files の直下に移動しておきます. unzip した時に getassoc\getassoc となった場合, 中にある方のGETAssocを移動しましょう.

依存するDLLをコピー

以下の 4 つの DLL を “C:\Program Files\getassoc\wbin” にコピーします.

  • icudt44.dll (from icu\bin)
  • icuuc44.dll (from icu\bin)
  • libexpat.dll (from “Expat 2.0.1\bin”)
  • libmecab.dll (from MeCab\bin)

Expad DLL

まず, libexpat.dll. これは “C:\Program Files\Expat 2.0.1\bin” にあります.

ICU4C DLL

icudt44.dll と icuuc44.dll は IUC44C のアーカイブを展開した中にあります.

MeCab DLL

libmecab.dll は “C:\Program Files\MeCab\bin” にあります.

wbin

DLL をコピーし終えた wbin の様子.

Apache の設定

作業内容は “C:\Program Files\Apache Software Foundation\Apache2.2\conf\httpd.conf” を修正し, Apache を再起動します. httpd.conf は[スタート]->[Apache HTTP Server 2.2] -> [Configure Apache Server] -> [Edit the Apache httpd.conf Configuration File] から開けます. 修正内容は以下の通り. (+ の行を追加)

--- original/httpd.conf 2009-08-12 10:02:09.000000000 +0900
diff -ru original/httpd.conf ./httpd.conf
--- original/httpd.conf	2009-08-12 10:02:09.000000000 +0900
+++ ./httpd.conf	2009-08-27 11:48:51.000000000 +0900 
@@ -323,6 +323,13 @@
     #
     ScriptAlias /cgi-bin/ "C:/Program Files/Apache Software Foundation/Apache2.2/cgi-bin/"
 
 +    ScriptAlias /getassoc/ "C:/Program Files/getassoc/wbin/getassoc.exe/"
 +    ScriptAlias /stmd/ "C:/Program Files/getassoc/wbin/stmd-cgi.exe/"
 +    <Directory "C:/Program Files/getassoc/wbin">
 +        Order allow,deny
 +        Allow from all
 +    </Directory>
 +
  </IfModule>
 
  <IfModule cgid_module>

confディレクトリのアクセス権の設定(Windows 7のみ)

conf directory

設定によっては conf 以下が編集できないことがあります. その場合, 管理者で編集するか, ユーザの編集権を(ファイルに)付与する. この例は後者.

httpd.conf の修正

httpd.conf

スタートメニューからhttpd.conf を開きます.

httpd.conf 2

httpd.conf を編集. まちがいやすいのが ScriptAlias の所で, getassoc.exe の後の / を忘れがち. これを忘れると動きません.

Apacheの再起動

ここで, Apache を再起動しますが, スタートメニューからの Restart または Stop/Start ではうまくいかないことがあります. ちょっと面倒ですが, Windows を再起動するのが確実.

動作確認(その1)

localhost

http://localhost/ にアクセスしてみる. “It works!” とでればまず Apache は動いています. ここで Apache が動かなかったら, httpd.conf と httpd-userdir.conf をみなおしましょう.

動作確認(その2)

localhost getassoc

次が勝負. http://localhost/getassoc/ にアクセスしてみる(ここでも最後の / は大事). この画面のようになれば OK. でも, リンク先はまだ使えません. この画面のようにならなかったら, httpd.conf と httpd-userdir.conf をみなおしましょう, ファイアーウォールの設定も要確認.

GETAssocの設定とデータの登録

ここまでくれば, あと一息です. ここからは, GETAssoc を設定し, データを登録します. 作業内容は stmd の起動, データの準備, データの登録です.

stmdの起動

stmd

まず, stmd を起動します. これは, “C:\Program Files\getassoc\wbin\stmd.bat” をダブルクリックすれば良いです. Apache 同様, ファイアーウォールが反応するので, 「許可」します.

stmd 2

この画面のようになれば OK. この黒い窓を閉じると stmd が終了してしまうので, 邪魔なら最小化しておきます. また, stmd は自動起動しないので PC を再起動したら手動で stmd を起動しましょう.

データの準備

copy tsv

ここでは TSV 形式のデータを準備したとします. これを propU.txt という名前で保存したと仮定します. (TSV 形式データの簡単な解説はこちら ) まず, このファイルを “C:\Program Files\getassoc\itb” にコピーします. (コピーしなくてもよいですが, その場合は stp.bat を適当に編集します.)

stp.batの修正

stp.bat

stp.bat を編集する.

stp.bat 2

編集するのは 2 箇所, 3 行目に propU が2回でてきますが, 1つめは GETAssoc がこのデータを識別する名前, 2つめは ファイルの名前です. (インストール直後の stp.bat はどちらも propU になっているので, 今回に限り, たまたま, stp.bat は無修正で良いことになってます.)

[[itb 形式>itbファイル形式]]でインストールしたいときは, 同じく 3 行目にある -u を -b にします.

stpの実行

stp

stp.bat の修正が完了したら, stp.bat を実行します. ダブルクリックで実行するとこの画面のようになります. 実行が完了したらこの窓は閉じて構いません.

nwam

これで propU.txt をもとに検索用インデックスが作成されました. インデックスは “C:\Program Files\getassoc\nwam\propU" に作られています. ちょっと覗いてみましょう.

登録されたデータの確認

getassoc

インストールに成功すると, データベース一覧が作成され, いよいよ GETAssoc が使えるようになります. データベース一覧は http://localhost/getassoc/catalogue.html で見ることができます.

catalogue

今登録したばかりの propU が見えています. 作成時刻は UTC で表示されています. #ARTICLES が記事数です.

動作の確認(その3)

Apache

REN! で連想検索してみた様子.

おつかれさまでした.