我正在尝试使用Linux测试项目中的一些测试场景,并获得内核源代码覆盖率。
我正在使用GCOV/LCOV来完成这个过程。
以下是我目前所拥有的东西:
- 在构建配置中的GCOV标志 - 基于GCOV的内核分析 - CONFIG_GCOV_KERNEL=y - CONFIG_GCOV_PROFILE_ALL=y - 在Linux内核版本2.6.32.60+drm33.26上
构建内核后,我在源文件夹中拥有所有的.gcov文件。
当我使用源文件作为输入时,GCOV/LCOV可以正常工作。
以下是我应该拥有但却没有的东西:
- /Proc/GCOV文件夹 - GCOV内核模块(gcov.o?)
现在我想运行测试方案,并使用LCOV查看到目前为止已使用了Linux内核代码的哪一部分。但是,当我调用LCOV -c时,即使所有构建标志都正确,我仍会得到以下结果。
我正在使用GCOV/LCOV来完成这个过程。
以下是我目前所拥有的东西:
- 在构建配置中的GCOV标志 - 基于GCOV的内核分析 - CONFIG_GCOV_KERNEL=y - CONFIG_GCOV_PROFILE_ALL=y - 在Linux内核版本2.6.32.60+drm33.26上
构建内核后,我在源文件夹中拥有所有的.gcov文件。
当我使用源文件作为输入时,GCOV/LCOV可以正常工作。
以下是我应该拥有但却没有的东西:
- /Proc/GCOV文件夹 - GCOV内核模块(gcov.o?)
现在我想运行测试方案,并使用LCOV查看到目前为止已使用了Linux内核代码的哪一部分。但是,当我调用LCOV -c时,即使所有构建标志都正确,我仍会得到以下结果。
加载所需的gcov内核模块。
lcov:错误:无法加载所需的gcov内核模块!
有一个针对<2.6.30的内核补丁,之后内核将内置此功能。