Mac 应用程序的 gcov 覆盖率为 0
我已完成以下操作,但我的 .app 的 gcov 覆盖率仍然为 0%。这是我正在做的事情:
- 我使用的是 Xcode 3.2.6、GCC 4.2,并且使用的是 Mac OSX 10.6。
- 我复制了调试配置并将其命名为 Gcov。在 Gcov 配置和应用程序目标中,我设置了以下构建配置:
- 选中“生成测试覆盖率文件”
- 检查“仪器程序流程”
- 将“-lgcov”添加到“其他链接器标志”
- 我执行了“全部清除”,然后执行了“构建并运行”。
- 一旦构建成功,它就会启动该应用程序。我在应用程序中做了一些快速的操作然后退出。
- 当我查看 .gcda/.gcno 时,我看到它们已经生成,事实上,每次我启动应用程序并在应用程序中执行其他操作时,我都会看到 .gcda/.gcno 文件确实正在更新。但是,使用 gcov/gcovr 查看 .gcda/.gcno 我一直得到 0 覆盖率。
关于我做错了什么有什么想法吗?感谢您的任何帮助。
I have done the following but I am still getting 0% gcov coverage for my .app. Here is what I am doing:
- I am using Xcode 3.2.6, GCC 4.2 and am on Mac OSX 10.6.
- I duplicated the Debug config and call it Gcov. In the Gcov config and the app target I set the following build configuration:
- Check "Generate Test Coverage Files"
- Check "Instrument Program Flow"
- Add "-lgcov" to "Other Linker Flags"
- I did a 'Clean All' then I did a 'Build and Run'.
- Once the build successfully built it launched the app. I did some quick things in the app and exited.
- When I go view the .gcda/.gcno I see that they have been generated and in fact every time I launch the app and do additional things in the app I see the .gcda/.gcno files are indeed updating. However, using gcov/gcovr to view the .gcda/.gcno I keep getting 0 coverage.
Any ideas as to what I am doing wrong? Thanks for any help.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
检查您的
gcc
是否真的gcc
与gcc --version
。在较新的 Mac 上,gcc
现在链接到llvm-gcc
,后者显然不支持gcov
。如果您发现这种情况,请使用clang
/clang++
代替gcc
/g++
。Check to see if your
gcc
is reallygcc
withgcc --version
. On newer Macs,gcc
is now linked tollvm-gcc
, which evidently doesn't supportgcov
. If you find that this is the case, useclang
/clang++
in lieu ofgcc
/g++
.