perlのインストール済みモジュールの確認

perlでインストールされているモジュールの確認を行う例。

#!/usr/bin/perl

use strict;
use warnings;

my @modules = qw(Mail Mail::Mailer GD MIME MIME::Parser MIME::Base64);

#print join("\n", @INC) . "\n\n";

foreach (@modules) {
        my $v = (&check_module($_) || 'not available');
        print <<_EOF
Module [$_] is $v
_EOF
}

sub check_module {
        my $m = shift;
        eval "use $m;";
        return eval "\$${m}::VERSION";
}