~>cat x.pl use y; use z; z_sub(); ~>cat y.pm package y; sub global_sub { print "global_sub working!" } 1 ~>cat z.pm package z; use Exporter 'import'; our @EXPORT = qw(z_sub); sub z_sub { global_sub(); } 1 ~>perl x.pl Undefined subroutine &z::global_sub called at z.pm line 5. #### ~>cat x.pl use y; use z; z_sub(); ~>cat y.pm package y; sub G::global_sub { print "global_sub working!" } 1 ~>cat z.pm package z; use Exporter 'import'; our @EXPORT = qw(z_sub); sub z_sub { G::global_sub(); } 1 ~> perl x.pl global_sub working!