自然言語処理研究室(竹内研)
研究 研究員 研究室紹介 講義 その他
言語処理ツールでインストールしたもので少し苦労したものがあったので
掲載しておきます.
その他のメモはここ
Mac OS X Panther に言語処理ツール
Mac mini (Power PC版), Mac OS 10.3, gcc3.3 にchasen, TinySVM, YamCha,
cabocha をインストールした.とても苦労したので,ここにメモを載せておきま
す.自己責任でご利用ください.(2008/8/19)
- 目標はCUI(テキストベース)でlinux と同様に言語処理ツールがつかえるよ
うにすること.つまりMacに外からloginして利用するこを想定.
まず日本語関連の構築.xtermに日本語を表示させる(関係無い設定もあるかもし
れない)
- X11関係のインストールを行う.DVDに X11User.pkg が入ってないので,X11
for Mac OS X というMac のページから download する.
http://www.apple.com/downloads/macosx/apple/x11formacosx.html
- Xcodeをインストール,そのとき X11SDK.pkg も入れる
- .emacs,.inputrc を作成し日本語が表示されるようにする.記述は他のページを参考
- less でEUCなどが文字化けする.Macの基本はUTF-8であるが,日本語の文字
化け対応のため lv というソフトをいれて lessにリンクをはる
- nkf を入れる.普通に make で入る./usr/local/bin がないのでディレク
トリを作成して ~/.bash_profileを作成しリンクを作る
つぎにlibiconv, darts, を入れて,ChaSen-2.3.3をいれる.
downloadして tar -tvfz で展開するのは同様
- .configure は問題ない.しかしmake で以下の部分がひっかかる
- setArray()を知らないといわれるので, set_array() に変更する.
- libiconv がひっかかるので,configure後の libディレクトリのMakefile
で LDFLAGS = とあるところに -liconv を追加する.
- make clean で消した後に,make, make check, sudo make installで入る.
- ipadicは普通に入った
次に TinySVM 0.09 展開して ./configure の後
- make で getopt.h 131行目でエラー発生.type が合わないので
2行前に書いてあるgetopt のタイプを貼り付ける.getopt.hの中に著者のコメン
トがあるので参考になる.下記のように書いた
- /* extern int getopt (); */ /* こちらが元の */
extern int getopt (int argc, char *const *argv, const char *shortopts);
- さらに./libtool というスクリプトで archive_cmds から始まる行を探し,
その行の \$CC を g++ に変更する.これで make がとおる.
次に YamCha.これは普通に入った.
次に cabocha.make は問題ないが起動しない.でライブラリがないといわれる.これは chasenのコンパイル時
に shared library が出来てない様子.なので以下のように手でリンクを張った
- /usr/local/lib/libchasen.dylib といものからリ
ンクを張って /usr/local/lib/libchasen.so というものを作る.
sudo ln -s /usr/local/lib/libchasen.dylib /usr/local/lib/libchasen.so
とすると良い
- いじょうで cabochaも動く
以上.これにより,linux マシーンや,windows のputty, teraterm などから
loginして Mac mini を言語処理サーバとして利用できる.実測で Mac mini は
アイドル 16W, アプリケーション作動時 33Wと低消費電力.良いですね.
AMD64にcabocha をインストール
- 構文解析器 cabocha-0.52 を AMD64 (64bit マシーン)でコンパイルする方法
(2005年7月15日現在)
cabocha をAMD64で (Red Hat Linux 3.2.3-34, gcc 3.2.3) WS 有料のもの)
./configure と make をすると成功するが make checkで失敗する
tests/test1.sh を実行をすると以下のようなエラーが発生した.
FATAL: Parser::open (): basic_string::replace
これを通すためには
cabocha-0.52/src/common.h の
static inline void replaceString (std::string &s, const std::string
&src, const std::string &dst)
{
unsigned int pos = s.find (src);
if (pos != std::string::npos) s.replace (pos, src.size(), dst);
}
の unsigned int pos = s.find (src); を
size_t pos = s.find (src);
と修正して make clean で一度きれいにしておき,
make でコンパイルすると動きます.
- cabochaの作者工藤さんから教えていただきました.
ご参考ください.
岡山大学
工学部
情報工学科
[Japanese]/[English]