我遇到了从 python 脚本在共享库上运行 gcov 的问题。
我有以下构建库的场景:
将一组文件(file1.c、file2.c)编译成静态链接的 lib(.a)。我使用 ar 实用程序来执行此操作,所有文件都使用以下选项进行编译:
-static -fprofile-arcs -ftest-coverage -coverage
使用一些其他文件(比如 file3.c)和上面指定的 .a 文件构建一个 .so 文件。我在编译和链接时再次使用相同的选项。
在python脚本中加载.so并执行。
问题: 生成的覆盖率文件仅包含 file3.c 的代码覆盖率。属于 .a 库的文件不会显示在覆盖率报告中。
我在此处链接 .a 时是否遗漏了任何选项。
最佳答案
发现问题。 我没有选择所有 .gcda 文件来生成报告。 使用 -object-directory 选项搜索所有 gcda 文件。
关于python - 从 python 脚本在共享库上运行 gcov,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13598416/