(´・ω・`)チンパンジーには厳しい





■やろうとしたこと
doc2vecを使いたかった。

Doc2Vecの仕組みとgensimを使った文書類似度算出チュートリアル

この手順に従って諸々をインストール。途中からLinux環境の話になってるが。
jumanppまで調子よくできてたんだが、KNPでこけた。


■KNPがインストールできなかった原因
九月末に4.17から4.18へバージョンアップされてたのが原因。homebrew側のローカルの設定ファイルには17のリンクが記載されてたんだが、バージョンアップに伴って17のリンクが消えてた。
knp.rbの以下を書き換え。
コマンドは brew edit knp。
(テキストエディタでknp.rbが開く)

・url
・SHA256

SHA256、ターミナルからコマンド+ファイル指定で算出できるっぽいんだが、算出した値をrbファイルに書き込んでも一致しなかった。
結局わからなかったので、チェックサム照合失敗時に表示される期待値をそのままrbファイルに書き込んで(!)無理やり一致させた。いいのかなこれ。

最初に書き換えた時は何かミスってたらしく、rbのインストーラが走るタイミングで引数異常が出てた。改行とかをいじってるうちにエラーが出なくなったので、その辺かな。

で、ファイル書き換え→brew install knpでインストール完了。と思いきや。


■リンク失敗
knpコマンドを入力すると、コマンドがないと言われる・・・。
再度brew install knpを叩くと、「brew link knpせーよ」とのお言葉が。素直に従うと、今度は「Could not symlink bin/crf_learn」とのこと。あーそういうことね。完璧に理解した(わかってない)。

よくわからんがとにかくリンクすればいいということは伝わってきたので、素直にコマンドを打つと今度は「Could not symlink bin/crf_learn」だってよ。なんやこいつ・・・。


察するにKNPインストール前にCRF++をインストールしてたのが問題なんじゃないだろうか。CRF++、実はKNPにパッケージングされてるみたいで、KNPインストール時にコンフリクトしてるぞとかいう警告が出ていた。
そのせいでパスが通ってないとかそういうのだろう・・・。

しかしmacもよくできたもんで、
Target /usr/local/bin/crf_learn
is a symlink belonging to crf++. You can unlink it:
  brew unlink crf++

To force the link and overwrite all conflicting files:
  brew link --overwrite knp

To list all files that would be deleted:
  brew link --overwrite --dry-run knp
と述べてきた。素直にコマンドを実行したら無事KNPが動くように。よかったよかった。
スポンサードリンク