Can't locate HTTP/Cookies.pm in @INC
#1
Hi

I've been a long time user of GiA and am now trying to get back into the command line, but facing an error after installing get_iplayer via Homebrew and trying to initialise the cache:

Code:
get_iplayer --cache-init
Can't locate HTTP/Cookies.pm in @INC (@INC contains: /usr/local/Cellar/get_iplayer/3.00.0/libexec/perl5/lib /opt/local/lib/perl5/site_perl/5.16.3/darwin-thread-multi-2level /opt/local/lib/perl5/site_perl/5.16.3 /opt/local/lib/perl5/vendor_perl/5.16.3/darwin-thread-multi-2level /opt/local/lib/perl5/vendor_perl/5.16.3 /opt/local/lib/perl5/5.16.3/darwin-thread-multi-2level /opt/local/lib/perl5/5.16.3 /opt/local/lib/perl5/site_perl /opt/local/lib/perl5/vendor_perl .) at /usr/local/bin/get_iplayer line 58.
BEGIN failed--compilation aborted at /usr/local/bin/get_iplayer line 58.

I checked I have perl installed via:

Code:
perl -v

This is perl 5, version 16, subversion 3 (v5.16.3) built for darwin-thread-multi-2level

After a bit of Google-ing I thought running this would solve it, but even after uninstalling and reinstalling get_iplayer (to pick up the newly available perl module) I get the same error:

Code:
cpan HTTP::Cookies

I used the default options on cpan, so it did a local lib installation.  Should I have gone for the sudo option instead?
#2
As I say in the instructions, only system Perl is supported, so it is up to you to figure out how to install modules. You appear to be using Macports Perl, and I can see that Macports provides a package for HTTP::Cookies, so you should remove your local lib and install that. Don't replace system-packaged modules unless there is a need to do so.

FWIW, I don't see any values in @INC that would indicate local::lib is in effect, since presumably the local lib is under your home directory. I suspect you haven't configured it properly in your shell. If you decide to return to local::lib, then I suggest you install it according to the instructions I provide. But don't use sudo. The whole point of using local::lib for get_iplayer is to avoid the need for that.
#3
Thanks dinky - you are my saviour.

I don't know why I had macports perl (or even macports itself) installed, but I've uninstalled that now and get_iplayer is working.

P.S. How did you spot I had macports perl installed?
#4
Macports default location is /opt/local