how to tell perl where to find a clearly installed module?

Robert P. J. Day rpjday at
Wed Sep 21 08:37:08 UTC 2011

  (bear with me, it's late/early and i'm fuzzy.)

  i'm building a massive project from elsewhere and after a few hours
of "make", it fails thusly:

... lots of stuff ...
cd Pacemaker_Explained && /usr/local/bin/publican build --publish
--langs=all --formats=pdf,html,html-single,txt
Can't locate in @INC ... (snip, coming shortly) ...

  when i first saw that, i realized that, yes, i never installed
publican so:

  $ sudo apt-get install publican

at which point the module is installed under /usr/share/perl5.  just
to play it safe, i can check it would be found:

perl -le 'print foreach @INC'
/usr/share/perl5    <-- so it should be found, right?

  but when i examine the very long list after this part of the error

  Can't locate in @INC (@INC contains: ... looooooong list)

there is, in fact, no mention of /usr/share/perl5, so somewhere in the
processing, i'm *guessing* that some lower-level Makefile has
completely rewritten the perl library path and lost /usr/share/perl5.

  what is the proper solution to this?  i can try to set and export
PERL5DIR right away but is that the normal way to handle this?



Robert P. J. Day                                 Ottawa, Ontario, CANADA


More information about the ubuntu-users mailing list