use strict; use warnings; use File::Spec; use Cwd 2.17 qw(realpath); use lib do { my @dirs = File::Spec->splitdir( (File::Spec->splitpath(realpath($0)))[1] ); pop @dirs while (scalar(@dirs) and $dirs[-1] !~ /\d+\.\d+/); File::Spec->join(@dirs, 'lib', 'perl'); }; use Module1; use Module2;