Quickly install perl module Net::Amazon::S3 and all its dependencies

by jagbir on May 25, 2009

Net::Amazon::S3 is the standard perl module to interact with Amazon S3 service using perl scripts. If you ever tried to install it, you may well aware about its gigantic dependecies on other modules which must be installed correctly. If anything goes wrong, you’ll be in mess because you have check around 66 different modules.

Here is a single command which will install the module and all of its dependecies (known upto the date of this article). I’ve tested this several times in CentOS 5.x boxes but I dont guarantee that it’ll also work seamlessly for you as well:

# cpan Net::Amazon::S3 DateTime::Format::ISO8601 DateTime Scalar::Util ExtUtils::MakeMaker Pod::Man Test::More DateTime::TimeZone Class::Singleton Params::Validate Attribute::Handlers Module::Build Cwd DateTime::Locale Class::ISA List::MoreUtils Time::Local DateTime::Format::Builder DateTime::Format::Strptime Class::Factory::Util Task::Weaken DateTime::Format::HTTP HTTP::Date Compress::Zlib Net::FTP URI MIME::Base64 HTML::Tagset HTML::Parser XSLoader Digest::MD5 Class::Accessor::Fast base XML::LibXML::XPathContext XML::SAX XML::NamespaceSupport File::Temp XML::LibXML::Common Digest::MD5::File Regexp::Common MooseX::StrictConstructor Moose Test::Exception Test::Harness Sub::Uplevel Carp Class::MOP Sub::Name Devel::GlobalDestruction Scope::Guard Sub::Exporter Params::Util Sub::Install Data::OptList MRO::Compat Class::C3 Algorithm::C3 Data::Stream::Bulk::Callback namespace::clean B::Hooks::EndOfScope Variable::Magic Exporter Test::use::ok IO::File MooseX::Types::DateTimeX Digest::HMAC_SHA1 LWP::UserAgent::Determined

After the successful running of above command, issue the next command to check which version of module has been installed in you server:

# perl -e ‘use Net::Amazon::S3; print $Net::Amazon::S3::VERSION.”\n”‘
0.51

You should be able to get the version number. If there’s still an issue, you’ve to dig around and in that case this may help you out.

Previous post:

Next post: