2013/01/06(日)OS X Mountain Lionにtextsearch_jaの環境を構築する

2013/01/06 18:34
PostgreSQLから呼び出せる形態素解析を利用した日本語の全文検索エンジン、[textsearch_ja](http://textsearch-ja.projects.pgfoundry.org/textsearch_ja.html)を利用させてもらっているのですが、依存しているプログラムのバージョンがtextsearch_jaの開発当初と異なっているため、環境の構築に苦労した部分がありましたので、手順をメモ的に残しておきたいと思います。 作業当時とPostgreSQLの最新バージョンが異なりますが(作業時9.2.1、現在9.2.2)、そこだけ読み替えれば上手く行くはずです。 #### Java Javaランタイムがインストールされていない場合、作業の途中でインストールの要求をされると思います。前もって入れる必要はありません。 #### Xcode [App Store](https://itunes.apple.com/jp/app/xcode/id497799835?mt=12)よりインストールしてください。 #### Command Line Tools XCodeを起動し、メニューの[Xcode]-[Preferences...]から、[Downloads]タブの[Components]を選択し、[Command Line Tools]の横の[Install]ボタンを押下してインストールしてください。 20130106 01 #### Homebrew ターミナルから以下のコマンドを入力してインストールしてください。ただし、これは2013年1月6日現在のコマンドなので、念のため[Homebrewのサイト](http://mxcl.github.com/homebrew/)を確認して最新のコマンドを確認してください。(ページの一番下にコマンドが書いてあります)
[crayon nums="false" striped="false"] ruby -e "$(curl -fsSkL raw.github.com/mxcl/homebrew/go)" [/crayon]
インストール終了後、以下のコマンドを入力します。
[crayon nums="false" striped="false"] brew doctor [/crayon]
`"Your system is raring to brew."`と表示されればインストールは成功です。続いて、以下のコマンドを入力し、HomebrewとFormulaを更新してください。
[crayon nums="false" striped="false"] brew update [/crayon]
#### 環境変数 /usr/local/bin を最優先にしたいので、.bash_profile に以下の記述を追加してください。
[crayon] export PATH=/usr/local/bin:$PATH [/crayon]
#### PostgreSQL ターミナルから以下のコマンドを入力してインストールしてください。  
[crayon nums="false" striped="false"] brew install postgresql [/crayon]
インストール終了後、以下のコマンドを入力してデータベースクラスタを初期化します。
[crayon nums="false" striped="false"] initdb /usr/local/var/postgres -E utf8 [/crayon]
PostgreSQLを自動起動にする場合、以下の3つのコマンドを入力します。毎回手動で起動する場合はこの操作は必要ありません。
[crayon nums="false" striped="false"] mkdir -p ~/Library/LaunchAgents cp /usr/local/Cellar/postgresql/9.2.1/homebrew.mxcl.postgresql.plist ~/Library/LaunchAgents/ launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist [/crayon]
#### pgAdmin GUIでDBを操作したい場合、[ダウンロードページ](http://www.pgadmin.org/download/macosx.php)からpgAdminをダウンロードし、インストールしてください。 #### DB作成 pgAdminを利用して(あるいはコマンドラインから)DBを作成します。このとき、データベースの定義は以下のように設定してください。 * Template : template0 * コレーション : C * 文字型 : C 20130106 02 #### MeCab ターミナルから以下のコマンドを入力してインストールしてください。
[crayon nums="false" striped="false"] brew install mecab brew install mecab-ipadic [/crayon]
#### textsearch_ja [ダウンロードサイト](http://pgfoundry.org/frs/?group_id=1000298)からソースコードを入手します。(textsearch_ja-9.0.0.tar.gz) 解凍後、Makefile に下記の1行を追加してください。  
[crayon] LDFLAGS = "-L/usr/local/lib" [/crayon]
Makefile 修正後、以下のコマンドを入力してインストールしてください。
[crayon nums="false" striped="false"] make USE_PGXS=1 sudo make USE_PGXS=1 install [/crayon]
インストール後、 /usr/local/Cellar/postgresql/9.2.1/share/postgresql/contrib/textsearch_ja.sql を編集します。 "LANGUAGE 'C'" という記述をすべて小文字、クォーテーションなしに修正 してください。 * 修正前: LANGUAGE 'C' * 修正後: LANGUAGE c 修正後、以下のコマンドを入力し、関数をPostgreSQLに登録します。
[crayon nums="false" striped="false"] psql -f /usr/local/Cellar/postgresql/9.2.1/share/postgresql/contrib/textsearch_ja.sql [DB名] [/crayon]
以上で設定は完了です。