bounceHammer has been EOL'ed on February 29, 2016

製品ライフサイクルの終了

2010年3月にオープンソースソフトウェアとして公開して以来、多くのユーザ様・企業様にダウンロードし、 ご利用いただきましたbounceHammerは、2016年2月29日(月)を持ちまして製品ライフサイクルの終了(EOL: End Of Life) となりました。長きにわたりbounceHammerをご使用いただき誠に有り難う御座いました。 開発元では後継となるバウンスメール解析ライブラリとして、より高精度で高速なSisimai(シシマイ) を二条項BSDライセンスで公開しています。

Sisimai
商用サポート

  • 1一式導入・設定・保守・開発の補助
  • 2独自MTA用解析モジュールの開発
  • 3個別案件の対応とメールサポート
  • 4バウンス管理・運用コンサルティング
  • 5スポット解析・解析済みデータ提供

Sisimai
商用サポート

  • 1一式導入・設定・保守・開発の補助
  • 2独自MTA用解析モジュールの開発
  • 3個別案件の対応とメールサポート
  • 4バウンス管理・運用コンサルティング
  • 5スポット解析・解析済みデータ提供

2. 必要なPerlモジュールを入れる

 

インストールが必要なPerlモジュールを確認

configureスクリプトを実行する前に、bounceHammerが必要とするPerlモジュール 先にインストールしなければなりません。 それらモジュールのインストール状況を確認する為のスクリプトがソースコードの トップディレクトリにあるModules.PLとして準備してあります。

/usr/local/bin/perl Modules.PL

必要なPerlモジュールをインストールする毎に ./configureを実行せずとも、configureスクリプトが内部で 呼び出しているModules.PLを使用してPerlモジュールのインストール状況が確認できます。

Perlモジュールのインストール状況を一覧表示
# export PERL5LIB=/usr/local/bouncehammer/lib/perl5
# /usr/local/bin/perl ./Modules.PL check
*[ NG ] Perl6::Slurp
 [ OK ] List::Util VERSION = 1.18
*[ NG ] Email::AddressParser
 [ OK ] Errno VERSION = 1.0901
 [ OK ] File::Copy VERSION = 2.09
*[WARN] Switch VERSION = 2.1001 is older than 2.13
...
欠損しているPerlモジュールだけ表示
# /usr/local/bin/perl ./Modules.PL missing
*[ NG ] Perl6::Slurp
*[ NG ] Email::AddressParser
*[ NG ] DBIx::Skinny
...
#

cpanm (App::cpanminus) を使う

モダンなPerlモジュールインストールツールcpanm

cpanmを入れる

cpanm(App::cpanminus)はhttp://cpanmin.us/ で配布されています。既にcpanmコマンドをインストール済みの場合は、この節は読み飛ばしてください。 ここでは単体のコマンドとして/usr/local/binにインストールしてみます。

# cd /usr/local/bin
 
curlで入れる
# curl -LO http://xrl.us/cpanm
 
wgetで入れる
# wget -O- 'http://cpanmin.us/' > ./cpanm ⏎
 
# chmod +x ./cpanm
# hash -r

Perlモジュールのインストール

ここでは、bounceHammerが必要とするPerlモジュールを全て /usr/local/bouncehammer/lib以下にインストールするものと します。

bounceHammerのソースコードにはモジュールのインストール状況 確認用スクリプトModules.PLを同梱していますので、その 出力をcpanmコマンドに渡すとコマンド実行後、待っているだけで Perlモジュールのインストールが完了します。

# cd /usr/local/src/bouncehammer-2.7.13p3
# export PERL5LIB=/usr/local/bouncehammer/lib/perl5
# perl ./Modules.PL missing
*[ NG ] Class::Accessor::Fast::XS
*[ NG ] Term::ProgressBar
*[ NG ] Time::Piece
...
↑のような出力をcpanmに渡す
# mkdir -p /usr/local/bouncehammer
# perl ./Modules.PL missing | cut -d' ' -f4 | cpanm -L \
> /usr/local/bouncehammer
...

cpanm -L /usr/local/bouncehammer を実行すると必要なモジュールと その先の依存モジュールが纏めて/usr/local/bouncehammer/lib/perl5 以下にインストールされます。

cpanmでPerlモジュールをインストールしたら、再度Modules.PL で必要なモジュールが全て入っているかを確認して下さい。

古いモジュール

Modules.PLの出力で、*[WARN] が先頭に書いているものは、インストールはされているがbounceHammerが要求するもの よりも古いバージョンのモジュールである事を意味しています。

少々古いぐらいであればbounceHammerは動作しますが、モジュールの仕様変更が あったバージョンをまたいでいる場合、正しく動作しない可能性がありますので、 できればそのモジュールを新しいものに差し替えてください。

cpanmコマンドで新しいモジュールに更新する
# /usr/local/bin/cpanm -L/usr/local/bouncehammer IO::Compress::Bzip2
...

データベース用モジュール

bounceHammerのデータ蓄積用に使用するデータベース(対応するデータベースソフトウェアは、 データベースを参照)に対応する Perlモジュールをインストールしてください。

データベース用のモジュールはconfigureスクリプトおよびModules.PL の検査対象外になっています。

データベース(MySQL)を使う場合は次のモジュールも入れてください
# cpanm -L /usr/local/bouncehammer DBI DBD::mysql
...
 
PostgreSQLの場合 # cpanm -L /usr/local/bouncehammer DBI DBD::Pg
...
 
SQLiteの場合 # cpanm -L /usr/local/bouncehammer DBI DBD::SQLite
DBD::SQLite is up to date (1.29).
↑DBD::SQLiteは既にインストール済み

bounceHammerが必要とするPerlモジュールのインストールが済んだら 構築の準備(./configure) へ進んでください。