in reply to @INC package location

You can change the contents of @INC on a per-program basis in a couple of ways. Either:

use lib qw( /some/dir );

or, something like:

BEGIN { push @INC, "/some/dir"; }

Of course, @INC will likely contain the directory from which your program was started. Thus, you should be able to use/require modules that reside in the same directory as your script.

baphomet.