Today, when I was installing some missing Perl modules for
SpamAssassin on a bare Ubuntu 8.04 LTS Hardy Heron
installation I had to use the CPAN shell for a few of
those modules. But when I tried to install the first of
the Perl modules not available via apt,
IP::Country::Fast, I got the following
Warning: prerequisite Geography::Countries not found. Writing Makefile for IP::Country -- NOT OK Running make test Can't test without successful make Running make install make had returned bad status, install seems impossible
At first I thought this had to do with the Perl module
Geography::Countries not being installed as well,
so I tried to install that one via the CPAN shell. But alas,
this also resulted in the "NOT OK" message:
Writing Makefile for Geography::Countries -- NOT OK Running make test Can't test without successful make Running make install make had returned bad status, install seems impossible
After some thinking I realised that I was working on a
bare Ubuntu installation and
make might be
missing... And since I had used the default configuration
of CPAN instead of manual configuration the first time I
started the CPAN shell using
perl -MCPAN -e
shell I overlooked this. On the other hand the "NOT
OK" warning CPAN gives is extremely unclear.
Anyway, I left the CPAN shell and used
install make to install
make. Next I used
which make to obtain the path to make, since I
had to configure this into the CPAN shell.
Back into the CPAN shell I first verified the current setting of
the make option using
o conf make:
cpan> o conf make make
The above might be read as "the current value of make is make" but it actually shows the name of the option, make, followed by its value, which is empty.
After I set the value of make to the path of
and commited this change, see commands and output below, I
was able to install the required Perl modules.
cpan> o conf make /usr/bin/make make /usr/bin/make cpan> o conf commit commit: wrote /etc/perl/CPAN/Config.pm
Well... until I had to install a module that required a C++ compiler.