これは誰でもハマると思うので、インストール手順をまとめておきます。「username」を自分のアカウント名に置き換えて利用してください。
ちなみに著者は「さくらのレンタルサーバ スタンダード」です。
「tar zxfv ******」の「******」は予め「/home/username/」にダウンロードしておくか、wgetを使ってください。
ひとつインストールできる度に「/home/username」に戻ってください。(念のため)
libiconvをインストール
tar zxfv libiconv-1.13.1.tar.gz cd libiconv-1.13.1 ./configure --with-prefix=/home/username/local make make install prefix='/home/username/local' exec_prefix='/home/username/local' libdir='/home/username/local/lib'
mecabをインストール
tar zxfv mecab-0.98.tar.gz cd mecab-0.98 ./configure --prefix=/home/username/local --with-charset=utf-8 LIBS=-liconv CPPFLAGS=-I/home/username/local/include LDFLAGS='-L/home/username/local/lib -R/home/username/local/lib' make make check chmod 755 install-sh make install
↓のエラーが出るけど大丈夫っぽいです。
(少なくとも自分はこれが出ても動きました)
runtests faild in exit: Illegal number: -1 FAIL: run-cost-train.sh =================== 1 of 3 tests failed ===================
mecab-ipadicをインストール
tar zxfv mecab-ipadic-2.7.0-20070801.tar.gz cd mecab-ipadic-2.7.0-20070801 ./configure --prefix=/home/username/local --with-charset=utf-8 make make install
mecab-configのパスを調べる(次のステップで聞かれるため)
whereis mecab-config mecab-config: /home/username/local/bin/mecab-config
Text::MeCabのインストール
tar zxvf Text-MeCab-0.20008.tar.gz cd Text-MeCab-0.20010 perl Makefile.PL prefix=/home/username/local/lib/perl5/ LIB=/home/username/local/lib/perl5/ INSTALLMAN1DIR=~/home/username/local/man/man1 INSTALLMAN3DIR=~/home/username/local/man/man3
↓のメッセージが出る場合は(恐らく出る)
Can't link/include 'mecab', 'mecab'
「/home/username/Text-MeCab-0.20010/Makefile.PL」をテキストエディタで開いて「check_lib($config);」を「#check_lib($config);」にしてコメントアウト。
コメントアウトしたら、「Text::MeCabのインストール」のコマンドを再度入力。
Warning: prerequisite Test::Requires 0 not found.
↑のエラーが良くみたら出ている場合は、
cpan install Test::Requires
で一応インストール。
「Test::Requires」をインストールしたら「Text::MeCabのインストール」のコマンドを再入力。
無事に終わったら完了です!もしエラーが出ていたら、まずはエラーの英語をよく読みましょう。
サンプルコード↓(文字コード:UTF-8)
#!/usr/bin/perl
use strict;
use warnings;
use lib qw(/home/username/local/lib/perl5/i386-freebsd-64int);
use Text::MeCab;
print "Content-Type: text/html; charset=UTF-8\n\n";
my $mecab = Text::MeCab->new();
my $str = "私はかわいいものが好きなだけであってロリコンではないぞ!";
my $node = $mecab->parse($str);
for(my $node = $mecab->parse($str); $node; $node = $node->next)
{
print " 表層:" . $node->surface . "<br />\n"; # 表層
print " 品詞:" . $node->feature . "<br />\n"; # 現在の品詞
print "コスト:" . $node->cost . "<br />\n"; # その形態素までのコスト
print "<br />\n";
}
サンプルコードに対するアウトプット↓
表層:私 品詞:名詞,代名詞,一般,*,*,*,私,ワタシ,ワタシ コスト:2737 表層:は 品詞:助詞,係助詞,*,*,*,*,は,ハ,ワ コスト:3163 表層:かわいい 品詞:形容詞,自立,*,*,形容詞・イ段,基本形,かわいい,カワイイ,カワイイ コスト:9394 表層:もの 品詞:名詞,非自立,一般,*,*,*,もの,モノ,モノ コスト:11400 表層:が 品詞:助詞,格助詞,一般,*,*,*,が,ガ,ガ コスト:10091 表層:好き 品詞:名詞,形容動詞語幹,*,*,*,*,好き,スキ,スキ コスト:10402 表層:な 品詞:助動詞,*,*,*,特殊・ダ,体言接続,だ,ナ,ナ コスト:9498 表層:だけ 品詞:助詞,副助詞,*,*,*,*,だけ,ダケ,ダケ コスト:13285 表層:で 品詞:助動詞,*,*,*,特殊・ダ,連用形,だ,デ,デ コスト:14327 表層:あっ 品詞:助動詞,*,*,*,五段・ラ行アル,連用タ接続,ある,アッ,アッ コスト:10781 表層:て 品詞:助詞,接続助詞,*,*,*,*,て,テ,テ コスト:11972 表層:ロリコン 品詞:名詞,一般,*,*,*,*,ロリコン,ロリコン,ロリコン コスト:16804 表層:で 品詞:助詞,格助詞,一般,*,*,*,で,デ,デ コスト:17505 表層:は 品詞:助詞,係助詞,*,*,*,*,は,ハ,ワ コスト:17740 表層:ない 品詞:形容詞,自立,*,*,形容詞・アウオ段,基本形,ない,ナイ,ナイ コスト:19285 表層:ぞ 品詞:助詞,終助詞,*,*,*,*,ぞ,ゾ,ゾ コスト:21801 表層:! 品詞:記号,一般,*,*,*,*,!,!,! コスト:22256 表層: 品詞:BOS/EOS,*,*,*,*,*,*,*,* コスト:20519
タグ: まとめ

[...] さくら鯖でText::MeCabをインストールする方法(UTF-8対応) | ぱわふるでいず [...]