Home Top About Help Login Search

perlからmecabをいじる

ID: 16
creation date: 2009/10/04 16:03
modification date: 2009/10/04 16:03
owner: naoto5959
tags: perl,mecab
# 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

出来ました。

0 comments
: