# cpan install Text::MeCab
なんかエラー出てしまうのですが、これの用な気がするので参考にしながら作業を進めてみます。
CerntOS5 64bit環境にText::MeCabを導入するとmake testが通らない件
# vi .root/cpan/build/Text-MeCab-0.20007/Makefile.PL
137 my %INFO = (
138 ABSTRACT => 'Alternative Interface To libmecab',
139 AUTHOR => 'Daisuke Maki <daisuke@endeworks.jp>',
140 CCFLAGS => $config->{cflags},
141 DEFINE => join( " ", @{ $config->{define} } ),
142 DISTNAME => 'Text-MeCab',
143 INSTALLDIRS => 'site',
144 # LIBS => [ split(/\s+/, $config->{libs}) ],
145 LIBS => `mecab-config --libs`,
146 LICENSE => 'perl',
147 NAME => 'Text::MeCab',
148 OBJECT => '$(O_FILES)',
149 PREREQ_PM => {
150 'Class::Accessor::Fast' => 0,
151 'Encode' => 0,
152 'Exporter' => 0,
153 'File::Spec' => 0,
154 'Test::More' => 0,
155 'Path::Class' => 0,
156 },
157 LD => `mecab-config --cxx`,
158 INC => `mecab-config --cflags`,
cd .root/cpan/build/Text-MeCab-0.20007/
# LDFLAGS='-m64' # CFLAGS='-m64' # CPPFLAGS='-m64' # CXXFLAGS='-m64' # export LDFLAGS CFLAGS CPPFLAGS CXXFLAGS
# make clean # perl ./Makefile.PL # make # make install
perlから動かしてみる
1 use strict;
2 use warnings;
3
4 use Text::MeCab;
5
6 my $m = Text::MeCab->new();
7 my $text = "今日もしないとね";
8
9
10 for (my $node = $m->parse($text); $node; $node = $node->next) {
11 print $node->surface, "\t", $node->feature, "\t", $node->cost, "\n";
12 }
実行すると
$ perl ./mecab.pl
今日 名詞,副詞可能,*,*,*,*,今日,キョウ,キョー,, 3153
も 助詞,係助詞,*,*,*,*,も,モ,モ,, 4995
し 動詞,自立,*,*,サ変・スル,未然形,する,シ,シ,, 10624
ない 助動詞,*,*,*,特殊・ナイ,基本形,ない,ナイ,ナイ,, 3548
と 助詞,接続助詞,*,*,*,*,と,ト,ト,, 4128
ね 助詞,終助詞,*,*,*,*,ね,ネ,ネ,, 9079
BOS/EOS,*,*,*,*,*,*,*,* 7052
出来ました。