保留源文件路径有问题

时间:2019-07-01 07:34:16

标签: c gcov

假设我当前在/home/testUser/gcovTest/test1/目录中,我有一个文件test.c,该文件由gcc -fprofile-arcs -ftest-coverage test.c编译,该文件生成了相关的.gcda and .gcno文件。

成功编译后,我执行生成的二进制文件./a.out并运行以下命令来生成.gcov报告。

gcov -p test.c

我所期望的

生成的test.c.gcov文件应该在test.c标记中包含home/testUser/gcovTest/test1/test.c的完整路径,即source:,但实际上它仅包含test.c

问题

如何让gcov在test.c文件中保留test.c.gcov的完整路径?

我什至尝试了以下方法,但它仍在test.c的源中打印test.c.gcov

gcov -p home/testUser/gcovTest/test1/test.c 

1 个答案:

答案 0 :(得分:3)

-p的{​​{1}}开关在输出文件名中保留输入文件的路径。也就是说,

gcov

生成文件gcov -p /foo/bar/baz.c 而不是简单地生成#foo#bar#baz.c.gcov-但是文件的内容是相同的。

baz.c.gcov生成源文件名,如.gcov报告中所示。如果您希望完整路径包含在报告中,只需在编译命令行上指定完整路径即可:

gcc