首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >gcov: 0%执行行错误

gcov: 0%执行行错误
EN

Stack Overflow用户
提问于 2015-08-03 01:30:33
回答 1查看 536关注 0票数 1

这是我第一次接触"gcov",所以我正试着一步一步来。我关注的是Wikipedia页面,所以我创建了一个简单的c文件,如下所示:

代码语言:javascript
复制
#include <stdio.h>

int
main (void)
{
int i;

for (i = 1; i < 10; i++)
{
  if (i % 3 == 0)
    printf ("%d is divisible by 3\n", i);
  if (i % 11 == 0)
    printf ("%d is divisible by 11\n", i);
}

return 0;
}

然后我编译了这个文件:

代码语言:javascript
复制
gcc -Wall -fprofile-arcs -ftest-coverage test.c

然后我输入:

代码语言:javascript
复制
gcov test.c

根据维基百科的页面,我应该得到如下内容:

代码语言:javascript
复制
88.89% of 9 source lines executed in file test.c
Creating test.c.gcov

然而,我得到的是:

代码语言:javascript
复制
File 'test.c'
Lines executed:0.00% of 7
test.c:creating 'test.c.gcov'

我不知道问题出在哪里。我正在mac 10.10.4上工作。当我输入的时候

代码语言:javascript
复制
gcc --version 

我得到了:

代码语言:javascript
复制
Configured with: --prefix=/Library/Developer/CommandLineTools/usr --with-gxx-  include-dir=/usr/include/c++/4.2.1
Apple LLVM version 6.1.0 (clang-602.0.53) (based on LLVM 3.6.0svn)
Target: x86_64-apple-darwin14.4.0
Thread model: posix

当我输入的时候

代码语言:javascript
复制
gcov --version

我得到了:

代码语言:javascript
复制
LLVM (http://llvm.org/):
LLVM version 3.6.0svn from Apple Clang 6.1.0 (build 602.0.53)
Optimized build.
Default target: x86_64-apple-darwin14.4.0
Host CPU: x86-64

我实际上想要的是一个跟踪程序执行的工具,也就是行的执行序列。我想我可以通过使用"gcov“来实现这一点。

有什么想法吗?

EN

回答 1

Stack Overflow用户

发布于 2015-08-13 17:48:27

你必须在调用gcov.c之前执行a.out,就像维基百科页面中提到的那样:)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31774600

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档