重现问题的步骤
#include<iostream>
int main(){
std::cout << "Hello World" << std::endl;
}
编写 main.cpp
从此链接下载工具链
使用以下命令编译。
- . /opt/poky/1.6/environment-setup-armv7a-vfp-neon-poky-linux-gnueabi
- arm-poky-linux-gnueabi-g++ main.cpp -o main --coverage
会出现如下错误。
错误
/opt/poky/1.6.1/sysroots/i686-pokysdk-linux/usr/libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/4.8.3/ld:找不到-lgcov collect2 : 错误: ld 返回 1 个退出状态
问题陈述
如何为 ARM poky 工具链生成 libgcov.so 文件?
-fprofile-args --coverage -ftest-coverage
我可以通过安装使用 x86 linux g++ 编译器生成代码覆盖率报告
- sudo apt-get install gcovr
- g++ main.cpp -o main --coverage
是否有任何源代码或 git 存储库可以从中为 ARM poky 工具链生成 libgcov.so 文件?或者是否有任何解决方案可以从 ARM poky 工具链中获取程序的覆盖范围?
我已尝试将以下存储库克隆并编译为库,但问题未解决。
如何在 Ubuntu 18.04 上为使用 ARM 工具链(poky 1.6)编写的程序生成代码覆盖率报告文件?