我想使用 GCOV 进行代码覆盖,但测试将在另一台机器上运行。因此可执行文件中 .gcda 文件的硬连线路径将不起作用。
为了更改此默认目录,我可以使用 GCOV_PREFIX 和 GCOV_PREFIX_STRIP 环境变量,如上所述here https://gcc.gnu.org/onlinedocs/gcc/Cross-profiling.html.
这是我使用的命令:
$ export GCOV_PREFIX="/foo/bar"
$ export GCOV_PREFIX_STRIP="3"
$ gcc main.c -fprofile-arcs -ftest-coverage
$ strings a.out | grep gcda
/home/calmarius/blahblah/main.c.gcda
路径保持不变。
有人有这方面的经验吗?
运行代码时会考虑环境变量。
在运行测试之前,将它们设置为目标计算机上的适当值,并且.gcda
文件将在您想要的位置生成。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)