BEGIN { @INC = () } #### BEGIN { @INC = qw( /path/to/apps/lib ); } #### $ perl -le 'print for @INC' /etc/perl /usr/local/lib/perl/5.8.8 /usr/local/share/perl/5.8.8 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.8 /usr/share/perl/5.8 /usr/local/lib/site_perl . #### $ /opt/bin/perl -E 'say for @INC' /opt/lib/perl5/5.10.0/i686-linux /opt/lib/perl5/5.10.0 /opt/lib/perl5/site_perl/5.10.0/i686-linux /opt/lib/perl5/site_perl/5.10.0 . #### $ perl -Mstrict -le 'print $INC{q(strict.pm)}' /usr/share/perl/5.8/strict.pm #### $ perl -MFile::Find -le ' find { follow => 1, wanted => sub{ print $File::Find::name if $File::Find::name =~ /strict\.pm$/ || $File::Find::name =~ /Data\/Dumper\.pm$/; }}, @INC; ' /usr/lib/perl/5.8/Data/Dumper.pm /usr/share/perl/5.8/strict.pm #### $ ls -ld /usr/lib/perl/5.8 /usr/share/perl/5.8 lrwxrwxrwx 1 root root 5 2008-02-05 13:17 /usr/lib/perl/5.8 -> 5.8.8 lrwxrwxrwx 1 root root 5 2008-02-05 13:17 /usr/share/perl/5.8 -> 5.8.8 #### BEGIN { @INC = qw( /path/to/apps/lib /usr/share/perl/5.8 /usr/lib/perl/5.8 ); } #### $ ./inc.pl Can't locate DBI.pm in @INC (@INC contains: /path/to/apps/lib /usr/share/perl/5.8 /usr/lib/perl/5.8) at ./inc.pl line 21. BEGIN failed--compilation aborted at ./inc.pl line 21. #### $ cat inc.pl #!/usr/bin/perl BEGIN { @INC = qw( /path/to/apps/lib /usr/share/perl/5.8 /usr/lib/perl/5.8 ); } # Core modules, along with in which Perl version they're first included use strict; # 5 use warnings; # 5.006 use Carp; # 5 use File::Spec; # 5.00405 use CGI::Carp; # 5.004 use Exporter; # 5 use Data::Dumper; # 5.005 # CPAN modules, list everything you need, as complete as possible use DBI; use DBD::mysql; use SQL::Abstract; use CGI::Application; use CGI::Application::Plugin::Forward; use CGI::Application::Plugin::DBH; use CGI::Simple; use CGI::FormBuilder; use HTML::Template; use URI; use Data::Pageset;