[Fwd: Re: Problem with coverage]

[email protected] (Rajanikanth Dandamudi) Tue, 03 Dec 2002 16:31:30 +0530
Newsgroups perl.qa.metrics
Message-ID <[email protected]>
Hi,

Any comments?

Thanks and Regards,
Rajanikanth


-------- Original Message --------
Subject: Re: Problem with coverage
Date: Mon, 2 Dec 2002 14:39:14 +0100 (CET)
From: "Paul Johnson" <[email protected]>
To: <[email protected]>
CC: <[email protected]>
References: <[email protected]>


Rajanikanth Dandamudi said:
> Hai
>
> I am planning to get the coverage of a file by name program_1.pl . This
> program_1.pl dynamically loads a c module defined in program_1.so . This
> program_1.so is a 64 bit ELF shared library and the perl available in
> the standard location is a 32-bit perl.
>
> So I had downloaded the perl v5.8.0 from cpan and compiled to obtain
> 64-bit perl. The module Devel/Coverage.pm which I generally use for
> obtaining coverage is not part of the perl distribution. Hence I
> downloaded the package(Devel-Coverage-0.2.tar.gz) and installed the
> Devel/Coverage.pm module.
>
> Now when I run the following command to obtain the coverage :
>
> perl -d:Coverage program_1.pl
>
> I get the following error message:
>
> No DB::DB routine defined at
> /proj/dite/WorkArea/Raja/perl/install/lib/site_perl/5.8.0/Devel/Coverage.pm
> line 4.
> BEGIN failed--compilation aborted at
> /proj/dite/WorkArea/Raja/perl/install/lib/site_perl/5.8.0/Devel/Coverage.pm
> line 4.
> Compilation failed in require.
> BEGIN failed--compilation aborted.
>
>
> Can someone helpme in understanding what the above problem is and how to
> overcome this?

This is a known problem.  Randy, the author, has said that he will
provide
an updated version when he can.  I think the solution involves declaring
the DB::DB subroutine earlier, but I am not sure.  Your other options
are
to go back to 5.6.1, or to try Devel::Cover.

Devel::Cover should work on a 64 bit perl, but feel free to send me
feedback if you try it.

-- 
Paul Johnson - [email protected]
http://www.pjcj.net