0

I'm trying to install Array::Iterator and Text::ParseWords using cpan. I'm on OSX with cpan v1.61 and perl v5.18.2.

When I start up cpan, after the initial configuration, I type install "Array::Iterator" and it seems to install correctly. But when I try to run my perl script with use Array::Iterator, I get:

Can't locate Array/Iterator.pm in @INC (you may need to install the Array::Iterator module) (@INC contains: /Library/Perl/5.18/darwin-thread-multi-2level /Library/Perl/5.18 /Network/Library/Perl/5.18/darwin-thread-multi-2level /Network/Library/Perl/5.18 /Library/Perl/Updates/5.18.2 /System/Library/Perl/5.18/darwin-thread-multi-2level /System/Library/Perl/5.18 /System/Library/Perl/Extras/5.18/darwin-thread-multi-2level /System/Library/Perl/Extras/5.18 .) at ./parse.pl line 7.
 at ./parse.pl line 7.
    main::BEGIN() called at ./parse.pl line 7
    eval {...} called at ./parse.pl line 7
BEGIN failed--compilation aborted at ./parse.pl line 7.
 at ./parse.pl line 7.

Line 7 is:

use Array::Iterator;
1
  • 3
    Could be a path problem. Try print(@INC); in your code. The directory list it returns should included the location that the new module was installed into. Also, do you only have one version of perl on your box?
    – Kim Ryan
    Commented Jun 25, 2015 at 0:40

1 Answer 1

1

Add the complete PATH where your Array::Iterator pm file is located Use the below code in start of the script after shebang line may be the path is not loaded

BEGIN { push( @INC, 'PATH' ) }

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.