Did this really happen? If so, your Perl installation has been severely crippled, and I think it would be unadvisable to keep using such a badly administered Perl. You spell the module extutils::makemaker, but the real name of it is ExtUtils::MakeMaker - did you verify that the module is not installed with this code?
perl -MExtUtils::MakeMaker -e1
If it still tells you that it can't find ExtUtils::MakeMaker, you can try to install ExtUtils::MakeMaker manually by copying the relevant files into a private directory. Please mind that ExtUtils::MakeMaker consists of several files, so MakeMaker.pm alone won't suffice.
(Untested) Steps for manually installing ExtUtils::MakeMaker locally.
- Go to http://www.cpan.org, and download ExtUtils::MakeMaker. You want the latest stable release.
- Download the .tar.gz
- Unpack it into a separate temporary directory
- Create a local directory in your home directory, say, /home/user/anonymous/perl-lib. This will be your private Perl library directory.
- Take all files in the lib/ directory, and copy them into your private Perl library directory (/home/user/anonymous/perl-lib in the example)
- Test that everything looks better via
perl -I~/perl-lib -MExtUtils::MakeMaker -e1
(no error there means everything works)
- Set the environment variable PERL5LIB to
/home/user/anonymous/perl-lib, assuming that is the full path
to your home directory. Check if that worked:
perl -MExtUtils::MakeMaker
- Alternatively add the following line to the top of all your scripts
that use ExtUtils::MakeMaker:
use lib '~/perl-lib';
These steps try to guide you through installing the latest version of ExtUtils::MakeMaker. A safer/saner approach might be to try to install the exact version that came with your version of Perl. For that, you need the following additional steps:
- Determine your Perl version:
perl -v
Let's pretend you have version 5.8.2
- Locate your Perl version on http://ftp.funet.fi/pub/CPAN/src/
- Download the .tar.gz file
- Unpack the .tar.gz file
- Take the files in lib/ExtUtils and the file ExtUtils.pm in the directory lib, and manually copy these into your private directory.
- Set up your environment or script like above.
|