Bug 115288

Summary: CPAN installation of SpamAssassin fails - entire Perl installation system broken?
Product: Red Hat Enterprise Linux 3 Reporter: Peter Collinson <pc>
Component: perlAssignee: Chip Turner <cturner>
Status: CLOSED DUPLICATE QA Contact: David Lawrence <dkl>
Severity: medium Docs Contact:
Priority: medium    
Version: 3.0   
Target Milestone: ---   
Target Release: ---   
Hardware: i686   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2006-02-21 19:01:09 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
Diff between 'good' and 'bad' Makefiles none

Description Peter Collinson 2004-02-10 08:52:52 UTC
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; SunOS sun4u; en-US; rv:1.4)
Gecko/20031128

Description of problem:
I have just created a new install of ES 3 on a new machine.
As far as I can tell, all the correct perl modules are installed.

I am attempting to install a recent version of SpamAssassin. I tried:

# cpan -MCPAN -e shell
install Mail::SpamAssassin

and it failed.

Checking if your kit is complete...
Looks good

Warning: I could not locate your pod2man program. Please make sure,
         your pod2man program is in your PATH before you execute 'make'

Writing Makefile for Mail::SpamAssassin
Makefile written by ExtUtils::MakeMaker 6.03
Makefile:94: *** missing separator.  Stop.
  /usr/bin/make  -- NOT OK
Running make test
  Can't test without successful make
Running make install
  make had returned bad status, install seems impossible


Going to the build directory and attempting

perl Makefile.PL

gives rise to the 'cannot find pod2man' message - and the Makefile
that is created contains illegal lines - the line 94 error refers
to installman1 below - see the other lines that are bad.

Is the MakeMaker system broken?

I logged in as root using ssh and the root environment is 'vanilla'
and still
obtained the same result. I was dubious of that my shell environment
was affecting things. I don't think that it is.

However, the odd thing is that running:

perl -d Makefile.PL

and saying 'c' to run to completion doesn't give the error message 
and creates a working Makefile. I was trying to trace it originally
to attempt to see what is happening.

I will enclose a diff between the good and bad Makefiles

Version-Release number of selected component (if applicable):
perl-5.8.0-88.4

How reproducible:
Always

Steps to Reproduce:
1.perl -MCPAN -e shell
2. install Mail::SpamAssassin
3.
    

Actual Results:  Checking if your kit is complete...
Looks good

Warning: I could not locate your pod2man program. Please make sure,
         your pod2man program is in your PATH before you execute 'make'

Writing Makefile for Mail::SpamAssassin
Makefile written by ExtUtils::MakeMaker 6.03
Makefile:94: *** missing separator.  Stop.
  /usr/bin/make  -- NOT OK
Running make test
  Can't test without successful make
Running make install
  make had returned bad status, install seems impossible


Expected Results:  A run to completion installing SpamAssassin

Additional info:

Comment 1 Peter Collinson 2004-02-10 08:55:54 UTC
Created attachment 97551 [details]
Diff between 'good' and 'bad' Makefiles

Comment 2 Peter Collinson 2004-02-10 09:03:06 UTC
Here's another possibly related 'funny':

Try:
perl -MCPAN -e shell
and type
r

This should give a list of CPAN modules that should be updated..
amongst  the list:

Apache::SubProcess             0.01      0.03 
D/DO/DOUGM/Apache-SubProcess-0.03.tar.gz
Apache::Test                    1.0      1.07 
S/ST/STAS/Apache-Test-1.07.tar.gzCould not eval '
	    package ExtUtils::MakeMaker::_version;
	    no strict;

	    local $File::Spec::VERSION;
	    $File::Spec::VERSION=undef; do {
		    unless ($File::Spec::VERSION >= $min_version) {
	    }; $File::Spec::VERSION
	' in
/usr/lib/perl5/vendor_perl/5.8.0/i386-linux-thread-multi/Apache/Test5005compat.pm:
Missing right curly or square bracket at (eval 23) line 10, at end of line
syntax error at (eval 23) line 10, at EOF
AutoSplit                    1.0307      1.04 
N/NW/NWCLARK/perl-5.8.3.tar.gz
CGI                            2.89      3.04  L/LD/LDS/CGI.pm-3.04.tar.gz
CPAN                           1.61      1.76  A/AN/ANDK/CPAN-1.76.tar.gz


Comment 3 Karl Hastings 2004-02-10 22:18:10 UTC
Try This:

export LANG=en_US
perl -MCPAN -e shell
install Mail::SpamAssassin

Comment 4 Peter Collinson 2004-02-11 06:52:15 UTC
This works - and is the one thing I didn't try. UNIX was easy when we
all used ASCII :-)

However - I would say that this IS a bug - although I now have a
work-around. Thanks for the prompt response.

PS. I still get the error report from the 'r' command.

Comment 5 Chip Turner 2004-02-17 17:14:33 UTC

*** This bug has been marked as a duplicate of 87682 ***

Comment 6 Red Hat Bugzilla 2006-02-21 19:01:09 UTC
Changed to 'CLOSED' state since 'RESOLVED' has been deprecated.