研究ブログ

2019年12月の記事一覧

MacでのKH Coderのインストール

経済の博士課程の学生からテキストマイニングについて相談を受けたので、KH Coderを紹介しましたが、Macではうまくインストールできなかったということでした。紹介した時には、簡単にインスールできるものと思いこんでて、たしかにWindows上でのインストールはそうなのですが、Macではかなり難しいですね。ターミナルからの操作が大量にあり、また、データベース管理システム(DBMS)のインストールもあって、大変です。KH Coder自体は無償ですが、Mac向けに有償(約4千円)のインストールパッケージがあるので、インストール作業に自信のない方は有償パッケージの利用をおすすめします。

自分の作業をざっとまとめておきますが、基本的にKH Coderが動くところまでしか確認しておらず、実際にはデータベース等の設定は行っていないので、そのあたりについては書いていません。まず、こちらの環境は以下の通りです。

  • MacBook Air (Retina, 13-inch, 2018)
  • macOS Catalina (10.15.2)

macOSへのソフトウェアのインストールにはMacPortsを使っています。HomeBrewでも同じようなことはできると思います。

最初にKH Coderのサイトの「KH Coder 3(最新版)ダウンロードの「Mac」のセクションへ行き、インストールのための事前準備(主に、KH Coderのインストールの前にインストールしておく必要がある別のソフトウェア)を確認します。具体的には「必要なソフトウェア/ハードウェアのLinuxに書いてあるものの準備が必要です。ここの記述を簡単にまとめると、X, ChaSen, MySQL, Perl, Rのインストールと、PerlおよびRの各種モジュール/ライブラリのインストールが必要です。また、配布物のREADME.mdには、"Installing khcoder on Ubuntu #91"が参考になると書いてありますので、そちらも参照してください。他にも、いろいろ探している時に、下記の掲示板の書き込みが参考になるとの情報がありました。
http://koichi.nihon.to/cgi-bin/bbs_khn/khcf.cgi?no=1105&mode=allread
http://koichi.nihon.to/cgi-bin/bbs_khn/khcf.cgi?no=1135&mode=allread

Xについては、XQuartxからダウンロードして、インストールします。Xでの日本語入力については確認していませんが、Macに付属のかな漢字変換ソフトを使っての入力はできないかもしれません。こちらはAquaSKKというソフトを使っていますが、このソフトではXQuartzでの日本語入力はできないようでした。他のソフトは全てMacPortsからインストールしました。

% sudo port install mysql8 mysql8-server
% sudo port install openjdk13
% sudo port install stanford-postagger
% sudo port install mecab             
% sudo port install R    

上のうち、POS Taggerについては、英文を解析しない場合は不要かもしれません。Perlについては、あらかじめMacPortsでインストールしていたので、上には含まれていません。

これらのインストールが済んだら、"Installing khcoder on Ubuntu #91"を参考にPerlとRのパッケージをインストールします。Rについては、

install.packages("RcolorBrewer", dependencies=TRUE)

の"color"のCを大文字にしないといけないようです。

また、Perlのモジュールについても、いくつかについては、そのままではインストールが失敗するものがありました。失敗したものは、以下のようにしてKH Coderを実行した時に以下のようなエラーメッセージがでます。

% perl ./kh_coder.pl
Can't locate DBD/mysql.pm in @INC (you may need to install the DBD::mysql module)

この場合は、DBV/mysql.pmが適切にインストールされていないということなので、「KH CoderをMacにインストール」を参考にしながら、ソースディレクトリに移動して、直接makeコマンド等を入力する時に、MySQLのコマンドを設定しておけば大丈夫でした。

% sudo env PATH=/opt/local/lib/mysql8/bin:$PATH perl Makefile.PL
% sudo env PATH=/opt/local/lib/mysql8/bin:$PATH make            
% sudo env PATH=/opt/local/lib/mysql8/bin:$PATH make install

毎回、このようにenvを使わなくても、自分の設定ファイルでPATHを設定してもよいです。

"Installing khcoder on Ubuntu #91"には言及のなかったモジュールも必要と言われることがあったので、その都度インストールしました。

0