All,
I've devised the following script to check if a CPAN module is installed on
a machine, and install it if it isn't.
The only problem is, the eval always fails and says it can't find the
module, and thus always installs it.
Also if I use "use" instead of "Require" it gives me compilation errors.
Having a brain dead day, anybody know where I'm going wrong?
regards
Marty
#!/usr/bin/perl
use CPAN;
use strict;
my @modules = (
"MIME::Base64",
"MD5",
"URI",
"LWP",
"Data::Dumper",
"IO::ScalarArray",
"Time::HiRes",
"Time::CTime",
"Date::Format",
"File::Spec",
"Getopt::Long",
"AppConfig",
"Net::NNTP",
"Net::FTP",
"Net::SNMP",
"NetServer::Generic",
"Template",
"DBI",
"DBD::mysql",
"Mail::Internet",
"MIME::Parser",
"XML::Parser",
"XML::Simple",
);
# Install modules
#
foreach my $mod ( @modules )
{
eval {require $mod;};
if ($@)
{
my $obj = CPAN::Shell->expand('Module',$mod);
$obj->install
}
}
print "\n\nDone.\n";
_______________________________________________
Perl-Unix-Users mailing list. To unsubscribe go to
http://listserv.ActiveState.com/mailman/subscribe/perl-unix-users