in reply to Re^6: Installing Modules Without Root
in thread Installing Modules Without Root

"perl Makefile.PL --bootstrap"

I cut and pasted the commands I gave (with adjustments for the ...s) so do them just that way. I didn't have to configure cpan but I'm not actually sure that's because my machine has a "special" state or because you're skipping one of the steps or something is wonky.

It still sounds like your env has ghosts of some sort. I'd start from scratch again. It should be just a couple minutes to run it all from the top.

Remember before running the Makefile.PL -- env | grep -i perl -- should show NO variables set. And you should get these as being non-existent:

ls ~/.cpan # ls: /home/moo/.cpan: No such file or directory ls ~/.cpanp # ls: /home/moo/.cpanp: No such file or directory ls ~/.cpanm # ls: /home/moo/.cpanm: No such file or directory ls ~/perl5 # ls: /home/moo/perl5: No such file or directory ls ~/perl # ls: /home/moo/perl: No such file or directory

I'll try this on one of my boxes I know causes problems tonight and report if it is indeed "correct" and amend otherwise.

Replies are listed 'Best First'.
Re^8: Installing Modules Without Root
by Anonymous Monk on May 19, 2010 at 22:42 UTC
    I tried it again, and result is the same . "env | grep -i perl" does not shown *any* environment variables. The PERL5LIB was showing up, but I unset it using "unset PERL5LIB". And also, none of these directories actually exist.

    Thanks again.

    Andy

Re^8: Installing Modules Without Root
by listanand (Sexton) on May 19, 2010 at 22:56 UTC
    Another interesting thing. When I do "perl Makefile.PL --bootstrap" , the first few lines are as follow:

    ==Error==

    Attempting to create file /home/andy/perl5/.modulebuildrc

    ExtUtils::MakeMaker version 6.31 required--this is only version 6.30_01.

    BEGIN failed--compilation aborted.

    ExtUtils::Install version 1.43 required--this is only version 1.33.

    BEGIN failed--compilation aborted.

    CPAN version 1.82 required--this is only version 1.7602.

    BEGIN failed--compilation aborted.

    ==End=

      I'll be damned… apparently this is completely kosher even though it complains like mad-

      • rm -rf ~/.cpan ; perl Makefile.PL --bootstrap
      • Say "yes" if prompted by the cpan shell for configure automatically
      • make install

      So, just do that (maybe more than once, I did it several times before I discovered it was working) and the make install "works." You'll know it worked when this works–

      perl -I~/perl5/lib -Mlocal::lib

      And when it does, put it into your shell .rc file and source it or rehash.

      My "install" was terribly noisy and definitely appeared to fail but I had no trouble installing App::cpanminus and other modules after setting the shell stuff.

      Good luck!

        OK, one more piece of information as I continue doing what you said.

        I actually need to install the perl modules on a common data share (huge hard disk) connected to a network of computers. I can only access the hard disk share after logging into one of the computers (obviously) but the deal is that all the computers have very little disk space by themselves - so any processing/build/install that the cpan/make file does, have to be using the space on the share. Hence I use --bootstrap=/my_dir (where my_dir is a directory on a share).

        So far though I am not seeing any error that says that it is because of insufficient disk space, but I know that this is possible based on my experience with installing other software.

        Anyway, back to work !

        Many thanks again for your help !

        Well no luck even after ~20 tries. After I do "perl Makefile.PL --bootstrap", I get the same error. After this, when I do "make install", I just the following one line error.

        Error: "make: *** No rule to make target `install'. Stop."

        Is there a way at all that I could have the scripts do everything on the share (right from creating .cpan to perl5 directories). I tried to pass the directory on share as a parameter to the bootstrap, but that did not work either. It still created .cpan and perl5 directories in my home directory. I get the same errors as before..