Ubuntu 14.04にHRForecastをインストール

HRForecastをインストール

  • GrowthForecastは便利なのですが、プロジェクト関係の定量データなどはそんなに頻繁にプロットする必要ないし、まとめて入れるとかよくあるのでHRForecastを入れることにしました。
  • インストールに意外と手こずったので記録に残しておきます。

とりあえずOSのパッケージマネージャで最新化してからMySQL入れとく

$ sudo aptitude update
$ sudo aptitude search ^mysql
$ sudo aptitude install mysql-client mysql-common mysql-server

HRForecastのインストール

  • Githubから取ってきてcpanmで依存関係を解決。
$ cd /usr/local
$ sudo git clone https://github.com/kazeburo/HRForecast.git
$ cd HRForecast
$ sudo cpanm -n -lextlib --installdeps .

MySQLのインストール

  • DBとユーザを作って、schema作成のSQLを流す。
  • user, passwordは本当は違うものになってます。
$ mysql -u root -p
mysql> create database hrforecast;
mysql> GRANT DELETE, INSERT, UPDATE, SELECT ON hrforecast.* TO 'user'@'localhost' IDENTIFIED BY 'password';
$ cat schema.sql | mysql -u root -p hrforecast

HRForecastの設定

  • HRForecastのディレクトリにあるconfig.plを編集します。
$ vi config.pl
{
    dsn => 'dbi:mysql:hrforecast;hostname=127.0.0.1',
    username => 'user', #dbのユーザ名
    password => 'password', #dbのパスワード
    port => '', #bindするport
    host => '', #bindするIP
    front_proxy => [],
    allow_from => [],
};

起動

$ sudo perl hrforecast.pl --config config.pl
Can't locate Plack/Loader.pm in @INC (you may need to install the Plack::Loader module) (@INC contains: /usr/local/HRForecast/lib /usr/local/HRForecast/extlib/lib/perl5/x86_64-linux-gnu-thread-multi /usr/local/HRForecast/extlib/lib/perl5 /etc/perl /usr/local/lib/perl/5.18.2 /usr/local/share/perl/5.18.2 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.18 /usr/share/perl/5.18 /usr/local/lib/site_perl .) at hrforecast.pl line 11.
BEGIN failed--compilation aborted at hrforecast.pl line 11.
  • あれ?

トラブルシューティング

  • よく見たらcpamnでエラー出てるし。
! Can't configure the distribution. You probably need to have 'make'. See /home/foo/.cpanm/work/1426048085.10819/build.log for details.
! Installing the dependencies failed: Module 'DBIx::Sunny' is not installed, Module 'Parallel::Scoreboard' is not installed, Module 'HTTP::Date' is not installed, Module 'Plack::Middleware::Header' is not installed, Module 'Plack::Builder::Conditionals' is not installed, Module 'Plack::Middleware::Scope::Container' is not installed, Module 'Time::Piece::MySQL' is not installed, Module 'Kossy' is not installed, Module 'Scope::Container::DBI' is not installed, Module 'Starlet' is not installed
! Bailing out the installation for HRForecast-0.01.
  • makeが無いということで入れてからやり直し。
$ sudo aptitude install make
$ sudo cpanm -n -lextlib --installdeps .
  • またエラー出るし・・・
Configuring Mouse-2.4.1 ... N/A
! Configure failed for Mouse-2.4.1. See /home/foo/.cpanm/work/1426048271.12295/build.log for details.
! Installing the dependencies failed: Module 'Mouse' is not installed
! Bailing out the installation for Data-Validator-1.07.
! Installing the dependencies failed: Module 'Data::Validator' is not installed
! Bailing out the installation for DBIx-Sunny-0.22.
! Installing the dependencies failed: Module 'DBIx::Sunny' is not installed, Module 'Scope::Container::DBI' is not installed, Module 'Kossy' is not installed, Module 'Parallel::Scoreboard' is not installed, Module 'Starlet' is not installed
! Bailing out the installation for HRForecast-0.01.
69 distributions installed

$ vi /home/foo/.cpanm/work/1426048271.12295/build.log
Configuring Mouse-2.4.1
Running Build.PL
Warning: ExtUtils::CBuilder not installed or no compiler detected
Proceeding with configuration, but compilation may fail during Build

This distribution requires a C compiler, but it's not available, stopped.
  • gcc入れてからやり直し。
$ sudo aptitude install gcc
$ sudo cpanm -n -lextlib --installdeps .

<== Installed dependencies for .. Finishing.
19 distributions installed

出来た!

使い方は気が向いたら書きます。でも簡単だから書かないかも。