You can download (the appropriate version of) MakeMaker.pm from ExtUtils::MakeMaker (follow the "Source" link). You should make sure that you really have the correct version though :)
| [reply] |
I don't understand the solution?
I'm unable to run 'perl Makefile.PL" command for the MakeMaker package. How does your suggestion solve my problem?
I'm missing dependencies (for example Cwd.pm) which I can't install without being able to run 'perl Makefile.PL' on those packages?
| [reply] |
| [reply] |
Either restore from backup or download it again from CPAN, ensuring you get the same version which you deleted.
| [reply] |
sudo aptitude reinstall perl-modules
Worked fine on my machine (Debian Squeeze). Of course I don't know if it will work on yours, since you haven't told us anything about your system.
| [reply] [d/l] |
Thanks for the suggestions. I manually copied in the missing dependencies, and was then able to successfully reinstall ExtUtils-MakeMaker. | [reply] |
running suse linux enterprise 11.
I didn't back it up, by the way. | [reply] |
"I didn't back it up, by the way.
Well, you know what to do about that in future.
| [reply] |
| [reply] |
| [reply] |
When CPAN downloads a package, it fetches a .gz file in exactly the manner described in the first response. It is possible to do, by hand, everything that CPAN conveniently automates. If you, as you did, accidentally mung a package upon which CPAN depends, you need to fix the problem by hand. CPAN is “very convenient, but not magickal.”
You can also, of course, reinstall CPAN ... as though you were doing so for the first time. This will bring in all of the packages upon which CPAN depends. Then, you simply upgrade CPAN to bring everything up-to-date. However, since you know exactly what the missing dependency is (and if you are reasonably sure that you did not blast-away something else...), a spot replacement of just this one package should be sufficient. (If it is not, then you’ll know soon enough.)
Either way, while you might need to make a pit-stop at the PM Confessional thread over in “Meditations,” this situation is actually just an annoyance, and maybe even a good exercise in practical firefighting. You are not, actually, “scro-o-o-ooed.”
| |