.\" Man page generated from reStructuredText .\" by the Docutils 0.23 manpage writer. . . .nr rst2man-indent-level 0 . .de1 rstReportMargin \\$1 \\n[an-margin] level \\n[rst2man-indent-level] level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] - \\n[rst2man-indent0] \\n[rst2man-indent1] \\n[rst2man-indent2] .. .de1 INDENT .\" .rstReportMargin pre: . RS \\$1 . nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin] . nr rst2man-indent-level +1 .\" .rstReportMargin post: .. .de UNINDENT . RE .\" indent \\n[an-margin] .\" old: \\n[rst2man-indent\\n[rst2man-indent-level]] .nr rst2man-indent-level -1 .\" new: \\n[rst2man-indent\\n[rst2man-indent-level]] .in \\n[rst2man-indent\\n[rst2man-indent-level]]u .. .TH "PERL2LCOV" "1" "2026-07-07" "2.5" "LCOV" .SH NAME perl2lcov \- perl2lcov documentation .INDENT 0.0 .TP .B Manual section 1 .TP .B Manual group LCOV Tools .UNINDENT .SH NAME .INDENT 0.0 .TP .B perl2lcov Translate Perl coverage data from \fBDevel::Cover\fP to lcov format .UNINDENT .SH SYNOPSIS .INDENT 0.0 .INDENT 3.5 .sp .EX perl2lcov [\-\-output filename] [\-\-testname name] [options] cover_db+ .EE .UNINDENT .UNINDENT .SH DESCRIPTION .sp \fBperl2lcov\fP traverses Perl coverage information in one or more coverage data directories (generated by the Perl \fBDevel::Cover\fP module) and translates it into LCOV \fB\&.info\fP format. .SH OPTIONS .sp In addition to common options supported by other tools in the LCOV suite (\fIe.g.\fP, \fB\-\-comment\fP, \fB\-\-version\-script\fP, \fB\-\-ignore\-error\fP, \fB\-\-substitute\fP, \fB\-\-exclude\fP, \fIetc.\fP), the tool options are: .INDENT 0.0 .TP .B \fB\-\-output\fP \fIfilename\fP, \fB\-o\fP \fIfilename\fP The LCOV data will be written to the specified file. If this option is not used, data is written to \fBperlcov.info\fP in the current directory. .TP .B \fB\-\-testname\fP \fIname\fP Coverage info will be associated with the testcase name provided. It is not necessary to provide a name. .UNINDENT .sp See \fBlcov(1) \%\fP and \fBlcovrc(5) \%\fP for details of other supported options and configuration settings. .SH EXAMPLES .sp Generate Perl coverage data and translate to LCOV format: .INDENT 0.0 .INDENT 3.5 .sp .EX # Write Perl line, branch, condition, and subroutine coverage data # to \(aqmyPerlDB\(aq in the current directory $ perl \-MDevel::Cover=\-db,./myPerlDB,\-coverage,statement,branch,condition,subroutine,\-silent,1 myScript.pl # OR: write all coverage types that Perl knows about to \(aqmyPerlDB2\(aq # Note that perl2lcov will ignore types it does not understand # (pod, time, and path) $ perl \-MDevel::Cover=\-db,./myPerlDB2,\-silent,1 myScript.pl # Run \(aqcover\(aq from the Devel::Cover installation to extract runtime # data into a usable form. This will also generate an HTML report # in \(aqmyCoverDB\(aq $ cover myCoverDB \-silent 1 # Run perl2lcov translator to produce LCOV format data: $ perl2lcov \-o perldata.info [\-\-testname myTestName] myCoverDB # Generate an HTML coverage report: $ genhtml \-o html_report perldata.info .EE .UNINDENT .UNINDENT .SH NOTES .sp The data generated by \fBDevel::Cover\fP is not always internally consistent. For example: .INDENT 0.0 .IP \(bu 2 Some functions which are never called do not appear in the coverage data. .IP \(bu 2 Sometimes a line will appear to be executed (non\-zero hit count) but none of its contained branch expressions have been evaluated. (If the line was executed, then at least one branch condition must have been evaluated.) .UNINDENT .sp This can cause the various tools in the LCOV package to generate errors of type \fBinconsistent\fP\&. .sp In that case, you can: .INDENT 0.0 .IP \(bu 2 Skip consistency checks entirely: see the \fBskip_consistency_checks\fP section in \fBlcovrc(5) \%\fP\&. .IP \(bu 2 Ignore the error: see the \fB\-\-ignore\-error\fP section in \fBgenhtml(1) \%\fP\&. .IP \(bu 2 Exclude the offending code: see the \fB\-\-exclude\fP, \fB\-\-filter\fP, and \fB\-\-omit\-lines\fP sections in \fBgenhtml(1) \%\fP\&. .UNINDENT .SH AUTHOR .sp Henry Cox <\%> .SH SEE ALSO .sp \fBlcov(1) \%\fP, \fBgenhtml(1) \%\fP, \fBlcovrc(5) \%\fP .INDENT 0.0 .IP \(bu 2 \fBDevel::Cover\fP module documentation .UNINDENT .sp \% .SH Copyright 2024-2026, LCOV Project .\" End of generated man page.