This is a nice trick, but it won't work if the script or or any modules that are loaded do a use lib or unshift @INC
Something like this should work, as long as require is not overriden elsewhere:
package ShowDependencies;
use strict;
*CORE::GLOBAL::require = \&show_require;
sub show_require (;$) {
my $module = shift;
print STDERR $module, $/;
my $retval = eval "CORE::require( $module )";
die $@ if $@;
return $retval;
}
1;
There is also a module (Module::Dependency) on the CPAN that builds a list of dependencies.
update: added use strict
-- simonflk
|