使用带有cmake的gcov时未创建.gcda文件

时间:2012-10-04 14:28:45

标签: cmake gcov

我正在使用gcov和cmake。所有标志都设置正确。 .GCNO文件正确创建。但是,执行从源文件生成的可执行文件时,情况有点复杂。可执行文件在bash脚本中运行。

让我创建一个示例场景,以便您可以给我准确的答案。

我有一个名为MY_FILE.CC的文件,其可执行文件名是EXECUTABLE_FILE 我使用cmake和为gcov设置的所有标志。 我有一个名为THE_SCRIPT.SH的脚本,它将与“make test”一起运行。该脚本运行EXECUTABLE_FILE文件。

所以这里的想法是bash脚本(THE_SCRIPT.SH)依次运行可执行文件(EXECUTABLE_FILE),并且运行这些bash脚本不会创建.GCDA文件。当我直接/手动运行可执行文件时,会创建.GCDA文件。我相信bash脚本在子shell中运行,而父shell无法知道源的可执行文件是否已运行。有人可以确认这是否正是这种情况?如果没有,那么确切的问题是什么?如果是,那么这个问题的解决方案是什么?

非常感谢。

1 个答案:

答案 0 :(得分:1)

这可能是question 与您的问题有关。

也许您可以提供有关标志,项目目录结构等的更多详细信息。