I just created a new virtual machine under VMWare 4.5 and installed SuSE Linux 9.1 on it. I didn't make any changes to the PERL or Apache2 installation options. A lot of scripts that have always worked perfectly (on previous installs of SuSE and other Linux flavors both as virtual machines and on "real" machines) are now broken. Every time I use "use" to include a package that is not part of the PERL installation, PERL claims it can't find the .pm file. For example, foo.pl is located in /home/mydir/perl/foo. In foo.pl I eval "use Mypackage" and when I run the script through a browser, $@ contains the error "Can't find Mypackage.pm in @INC..." The listing of paths contained in @INC _does_ include /home/mydir/perl/foo. This is happening with every script I've written. In the scripts, I add the path to the script files to @INC and when the error is generated, I see that @INC _does_ contain the directory where the supposedly missing .pm definitely _does_ reside. So, the path is in @INC and the file in in the path but PERL swears it can't find the file.
Standard PERL packages load just fine using "use" and the scripts all work if I run them from the command line as long as I am in the directory that contains the script files. If I run the script from another path or through a browser, I get the @INC error every time for every package I try to use.