【问题标题】:gcov can't find a file. Mac OSXgcov 找不到文件。 Mac OSX
【发布时间】:2014-08-27 09:33:17
【问题描述】:

我在调用 gcov 时遇到问题,它一直返回 - 没有这样的文件或目录。

当我打电话时

localhost:R-3.0.1 romantsegelskyi$ gcov src/main/eval.c  
eval.c: No such file or directory

但是文件本身和 gcov 所需的信息存在。

localhost:R-3.0.1 romantsegelskyi$ ls src/main/eval*
src/main/eval.c       src/main/eval.d     src/main/eval.gcda  src/main/eval.gcno  src/main/eval.o

我已尝试指定 --object-directory 但仍然没有成功

localhost:R-3.0.1 romantsegelskyi$ gcov src/main/eval.c --object-directory=./src/main
eval.c: No such file or directory

最奇怪的是,只有在 OSX 上才会出现这种情况,在 Linux 上,一切都按预期运行。有什么想法吗?

【问题讨论】:

  • 您确定文件名(或命令)没有任何奇怪/不可见的字符吗?尝试ls src/main/eval.c(来自与gcov 命令相同的上下文)。
  • 似乎工作正常,localhost:R-3.0.1 romantsegelskyi$ ls src/main/eval.c src/main/eval.c

标签: macos gcov


【解决方案1】:
  • 同样的行为!!更奇怪的是:我得到了结果(.gcov 文件),遵循这个消息!或许,你也有结果?
  • 问题有两个方面:
    • gcov手册说gcov应该默认在目标文件和gcov数据文件所在的目录执行。第一个也是最简单的工作解决方案是:进入适当的目录并执行 gcov cd src/main; gcov eval.c
    • 为什么 --object-directory=... arg 似乎不起作用?因为预期的值是一个目录名,而在给出的例子中,它是一个文件名。所以你应该写 --object-directory=src/main (这个工作也是) 或 --object-file=src/main/eval.c (根据文档。我没试过这个!)

【讨论】:

    猜你喜欢
    • 2011-11-19
    • 1970-01-01
    • 1970-01-01
    • 2021-06-24
    • 2021-02-10
    • 2016-01-29
    • 2015-11-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多