in reply to Can't locate in @INC

Things to check:

  1. There's definitely a file called $dir/lesenfantsterribles.pm for some $dir that's in your @INC. Can you confirm this?

  2. The case matches your use statement. use Foo will load Foo.pm but use fOO will load fOO.pm... unless you're on a case-insensitive filesystem, which you are probably not.

  3. Let's say the module is /usr/share/perl5/lesenfantsterribles.pm. Then check /usr/share/perl5/lesenfantsterribles.pm is readable by whatever user the web server is running under. Also check /usr/share/perl5/, /usr/share/, /usr/, and / are readable and executable by that same user. Even if the permissions look right, check they can actually be read. Try using cat or less to view the file contents.

Replies are listed 'Best First'.
Re^2: Can't locate in @INC
by Anonymous Monk on Aug 31, 2023 at 11:50 UTC
    Thank you. I can definitely confirm querstions 1 and 2. This error has occurred on all 8 sites running on that host - not just one and the modules all have lower case names to avoid spelling mistakes - and some have been running over 10 years. I don't see how they can't be useable/readable as both the directories and the modules have 0755. I know almopst nothing of unix and as far as I know there is no "command line" anywhere. I think I'll write a snippet to read the module as a file to check