in reply to Re: Re: module location
in thread module location
Well, there are a few solutions to this.
My bug was: require DBI looks for "DBI.pm" because DBI is a bareword; but this does not work if you put the bareword in a variable and require that instead.
One simple solution is to just:
If you don't like that, you can change the eval to a string eval, which will interpolate the package name into a bareword before require sees it:./test.pl DBI.pm
This would be the more flexible solution, since it would handle things like ./test.pl DBD::PgSQL (assuming that makes sense... basically, any module with ::'s in it).#!/usr/bin/perl -w use strict; my $perl_module = shift; eval "require $perl_module" or die "Can't find $perl_module!";
Alan
In Section
Seekers of Perl Wisdom