Beefy Boxes and Bandwidth Generously Provided by pair Networks
P is for Practical

Re^3: perl lost its modules!

by seandarcy (Initiate)
on Apr 02, 2014 at 01:10 UTC ( #1080662=note: print w/replies, xml ) Need Help??

in reply to Re^2: perl lost its modules!
in thread perl lost its modules!

OK, you're my new favorite solution. How do I change the INC path? Or do I create the /root/perl5 folders, and chmod 755?

Replies are listed 'Best First'.
Re^4: perl lost its modules!
by dave_the_m (Monsignor) on Apr 02, 2014 at 09:32 UTC
    How do I change the INC path? Or do I create the /root/perl5 folders, and chmod 755
    You mention earlier that "The Fedora installation does set PERL5LIB to /root/perl5", to which I would reply, no it doesn't, not by default. what I suspect you are doing is being logged in as root, and in root's /root/.bashrc or similar, it sets PERL5LIB to $HOME/perl5. Then you are doing su user rather than su - user, and so inheriting root's environment. Note that /root is the root user's home directory; a non-root user should *not* be accessing anything under /root.

    So in summary, your PERL5LIB environment variable shouldn't be set; find out how its being set, and stop it.


      Absolutely right. You are the winner. This is a remote server I'm using for video encoding. For various odd reasons it's necessary to ssh in as root, and then su. If I su - user all works.

      We've done this for years. It was only with the upgrade to Fedora 20 (and perl-5.16 -> perl-5.18) did we have the problem.

      Thanks for all the help. I'd never have figured this out on my own.

Re^4: perl lost its modules!
by boftx (Deacon) on Apr 02, 2014 at 01:32 UTC

    How was Perl installed? Was it an RPM or build-from-scratch? It seems strange that an RPM would put anything under /root in @INC. Changing dir perms is usually a Bad Idea (tm) so I would consider completely uninstalling Perl and starting over if possible.

    It helps to remember that the primary goal is to drain the swamp even when you are hip-deep in alligators.
Re^4: perl lost its modules!
by halfcountplus (Hermit) on Apr 02, 2014 at 09:39 UTC


    echo $PERL5LIB

    That's a shell, not a perl, command.

    Someone possibly set this previously somewhere such as /etc/profile. If that is the problem, until you can figure where it is set — grep -R PERL5LIB /etc will help with that — just

    export PERL5LIB=

    I.e., nothing after the equals sign. You could also add that to ~/.bashrc.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1080662]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others browsing the Monastery: (6)
As of 2020-08-10 22:11 GMT
Find Nodes?
    Voting Booth?
    Which rocket would you take to Mars?

    Results (58 votes). Check out past polls.