My thinking it the non-working user has an extra path added to @INC that was built using a newer version of perl. Since the script specifies which version of perl is in use (the older version) but PERL5LIB is using the libs built using a newer perl, you will see the error, hence looking for environment settings that will override @INC.
Ankita can also compare the more detailed output from “perl -V” which will include the library paths (@INC) to prove/disprove this. Duncs From: Uri Guttman [mailto:u...@stemsystems.com] Sent: 07 January 2016 07:45 To: Duncan Ferguson <duncan.fergu...@opsview.com>; Ankita Rath <ankitarath2...@gmail.com> Cc: Perl Beginners <beginners@perl.org> Subject: Re: Is perl user specific On 01/07/2016 02:38 AM, Duncan Ferguson wrote: If the perl binary is the same between both users, but you are getting module version errors, then it is possible you have other environment settings telling perl to use different library paths To check, use env | grep –i perl and look for differences, especially for PERL5LIB or PERLLIB the #! line will override anything else. only if you run the script as perl script.pl will perl be selected by the $PATH. also the env vars you mention only control loading modules. she has a perl version problem. uri