スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

R ubyとQt4とMeCabの利用

Qt4とは、C++とかで利用されるGUIライブラリなんすけど、Rubyでも使えるんすよ。
C++のソースをRubyぽく書くとそのまま利用できたりするので、便利です。

環境構築で結構悩んだため、メモしときます。


私の環境
OS:Win7 Enterprise
Ruby:ruby 1.8.7 (2010-12-23 patchlevel 330) [i386-mingw32]


環境構築


Step1 Rubyをいれる。
   PATHをRubyのBinを含んで上げると、ruby なんたら出来るけど、gemとか出来ないかもしれないし
   よくわからんので素直にコマンドプロンプトのプロパティからRubyルート\bin\setrbvars.batが起動時に
   実行されるようにする。
Step2 gemできるか確認する。ついでに、qtを探す。
  gem search --remote qtruby
Step3 たぶん、あるので
  gem install qtruby4
以上でQt4が使えるらしいです。入ったかたはおめでとうございます。
Ruby+Qt4でなんでもやっちゃってください。


以下うちのマシンでの対処
Step4 「Found qtruby4 (2.1.0), but was for platform mswin32」というエラーが帰ってくる。
Step5 他のブログだとプラットフォーム別のqt4を選べるようだったんだけど、うちの機械だとそうはいかない。
Step6 http://rubyforge.org/frs/?group_id=181とかからqt4のgemを貰ってきます。
Step7 適当なフォルダに移動後、実行させます。
gem install xxxxxxxx.gem
Step8 Finish!
※Step4の前にgem自体のupdateとか必要かもしれません。


今回躓いたところ
Ruby(どのバージョンをインスコしたか忘却)をインスコした際に出来る
「Start command prompt with Ruby」とやらから、実行すると文字化けはしないのに、Pathでつないだデフォなコマンドプロンプトから実行すると、文字列を配列に.splitで分割した後に入れると文字化けするという問題。

どうやら、Ruby自体の準備が出来てなかった(よくわからん><)ようなので、上記のStep1をおこなった。
文字化けはこれで回避。

ただ、どうしてもqt4が使えないということで、Step2~をおこなった。


MeCabの利用


バインディングとかあり高速でやりとりが出来るらしいです。

ですが、つまずいたので、Windows向けのMeCabをインスコしたあとに、
PathをMeCabのBinにつなげます。

IO.popenでささっと使えます。

io = IO.popen("mecab.exe 僕が悪い。", "r")
until io.eof?
word_list.concat io.gets.split(nil)
end
a = word_list[0].split(',')
p a


とすると、僕が悪い。というのが形態素解析され、その結果が一次元配列に要素ごとで入り、
最後にコマンドラインに表示されます。


今回躓いたところ
バインディングにおいての全ての行程




あとはPostgresqlとAuth認証のライブラリをもってくれば、Windows7でTwitterのBotが作れたりできる感じです。
さいきんのBOT事情などしりませんが!!LOL
スポンサーサイト

コメントの投稿

非公開コメント

検索フォーム
RSSリンクの表示
リンク
ブロとも申請フォーム

この人とブロともになる

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。