Skip to content

Unable to generate coverage report using lcov on MacOs 15.3.1 #31927

@Prabhat1308

Description

@Prabhat1308

Is there an existing issue for this?

  • I have searched the existing issues

Current behaviour

While trying to get a coverage report , the report generation fails complaining of duplicate function definitions.

Expected behaviour

Generate a coverage report for the branch.

Steps to reproduce

cmake -B build -DCMAKE_BUILD_TYPE=Coverage
cmake --build build
cmake -P build/Coverage.cmake

Relevant log output

Capturing coverage data from src
geninfo cmd: '/opt/homebrew/Cellar/lcov/2.3/bin/geninfo src --toolname lcov --output-filename baseline.info --initial --gcov-tool /Users/prabhatverma/projects/bitcoin/build/cov_tool_wrapper.sh'
Found LLVM gcov version 16.0.0, which emulates gcov version 4.2.0
Using intermediate gcov format
Recording 'internal' directories:
        /Users/prabhatverma/projects/bitcoin/build/src
        src
Writing temporary data to /tmp/geninfo_datI48l
Scanning src for .gcno files ...
Found 401 graph files in src
using: chunkSize: 1, nchunks:401, intervalLength:20
lcov: WARNING: (gcov) GCOV did not produce any data for /Users/prabhatverma/projects/bitcoin/build/src/secp256k1/src/CMakeFiles/secp256k1_precomputed.dir/precomputed_ecmult.c.gcno
        (use "lcov --ignore-errors gcov,gcov ..." to suppress this warning)
lcov: WARNING: (gcov) GCOV did not produce any data for /Users/prabhatverma/projects/bitcoin/build/src/secp256k1/src/CMakeFiles/secp256k1_precomputed.dir/precomputed_ecmult_gen.c.gcno
Message summary:
  1 error message:
    inconsistent: 1
  2 warning messages:
    gcov: 2
lcov: ERROR: (inconsistent) "/Users/prabhatverma/projects/bitcoin/src/secp256k1/src/scalar_impl.h":67: duplicate function 'secp256k1_scalar_split_lambda' starts on line 67 but previous definition started on 142 while capturing from src/secp256k1/src/CMakeFiles/exhaustive_tests.dir/tests_exhaustive.c.gcno.
        (use "lcov --ignore-errors inconsistent ..." to bypass this error)
CMake Error at build/CoverageInclude.cmake:45 (execute_process):
  execute_process failed command indexes:

    1: "Child return code: 1"

Call Stack (most recent call first):
  build/Coverage.cmake:5 (include)

How did you obtain Bitcoin Core

Compiled from source

What version of Bitcoin Core are you using?

master@5b8fd7c

Operating system and version

MacOs Sequoia 15.3.1

Machine specifications

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions