Python の本を読んでたら、途中でimport mecabとか書いてあって、そのまま記載したらパッケージが見つからないとかエラーが出ました。イラついたのでちゃんと自分で入れようとしたらエラーが。なので、解決までのメモをとっておきます。

リポジトリを追加すると解決した

ひとまず調べたところによると、リポジトリを更新すると解決するらしいので、実行します。

ここで注意なのが、他の紹介記事などを見ると、バージョンベタ打ちの場合があって、記事が古い場合はそれで解決しないので、きっちりと最新版で行けるように以下を実行します

>rpm -ivh http://packages.groonga.org/centos/groonga-release-latest.noarch.rpm

~ぐだぐだ表示されるが省略~

でmecabを入れようとしたら、今度はどうやっても以下のエラーが出る。上記のリポジトリでなんとかなるらしいんだけど、ならない

警告: /var/cache/yum/x86_64/7/groonga/packages/mecab-0.996-2.el7.1.x86_64.rpm: ヘッダー V4 RSA/SHA256 Signature、鍵 ID 34839225: NOKEY
file:///etc/pki/rpm-gpg/RPM-GPG-KEY-groonga から鍵を取得中です。


The GPG keys listed for the "Groonga for CentOS 7 - x86_64" repository are already installed but they are not correct for this package.
Check that the correct key URLs are configured for this repository.


 Failing package is: mecab-0.996-2.el7.1.x86_64
 GPG Keys are configured as: file:///etc/pki/rpm-gpg/RPM-GPG-KEY-groonga

どうしてかさっぱり。なので、もうしょうがないので以下で対応

yum install –nogpgcheck mecab mecab-ipadic

–nogpgcheck オプションでGPGチェックをスキップすることにしました。

読み込んだプラグイン:fastestmirror
Loading mirror speeds from cached hostfile
 * epel: nrt.edge.kernel.org
 * extras: ftp-srv2.kddilabs.jp
 * updates: ftp.jaist.ac.jp
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ mecab.x86_64 0:0.996-2.el7.1 を インストール
---> パッケージ mecab-ipadic.x86_64 0:2.7.0.20070801-17.el7 を インストール
--> 依存性解決を終了しました。

依存性を解決しました

===========================================================================================================================================================
 Package                              アーキテクチャー               バージョン                                      リポジトリー                     容量
===========================================================================================================================================================
インストール中:
 mecab                                x86_64                         0.996-2.el7.1                                   groonga                         383 k
 mecab-ipadic                         x86_64                         2.7.0.20070801-17.el7                           groonga                          10 M

トランザクションの要約
===========================================================================================================================================================
インストール  2 パッケージ

合計容量: 11 M
インストール容量: 11 M
Is this ok [y/d/N]: y
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
警告: RPMDB は yum 以外で変更されました。
** Found 1 pre-existing rpmdb problem(s), 'yum check' output follows:
groonga-release-1.5.2-1.noarch は groonga-release-1.1.0-1.noarch の複製です
  インストール中          : mecab-0.996-2.el7.1.x86_64                                                                                                 1/2 
  インストール中          : mecab-ipadic-2.7.0.20070801-17.el7.x86_64                                                                                  2/2 
  検証中                  : me

完了したそうです。しょうがないのでこれでいったんいいとしました。

Pythonでmecabを使えるようにする

最後に以下でpythonで使えるようにしました

>pip install mecab-python3

~長々と出るので省略~

実行したら「ModuleNotFoundError: No module named ‘MeCab’」と出なくなりました。よかったよかった

おわり

コメント