gpt4 book ai didi

gcc - 使用 arm-none-eabi-gcc 从 cpp 生成 elf 文件

转载 作者:行者123 更新时间:2023-12-04 18:10:41 31 4
gpt4 key购买 nike

我想在嵌入式目标上对 C++ 源代码进行代码覆盖。基本思想是,生成一个 elf 以及使用 gcc 打开的 -frofile-arcs -ftest-coverage。将其下载到 ARM 设备上,然后收集数据以使用 gcov 分析代码覆盖率。

如何使用 arm-none-eabi-gcc 命令生成 elf 文件。我已经设置了 GNU ARM 工具链并设置了环境变量。我可以使用 arm-none-eabi-g++ -c -mthumb -mcpu=cortex-m3 -fprofile-arcs -ftest-coverage filename.cpp -o filename.elf 吗?

提前致谢!

最佳答案

不,您需要做更多的事情。您需要与 gcov 库链接。这可以通过 -lgov 和 -fprofile-arcs 链接器标志来实现,希望您的链接器脚本具有 .got 和 .plt 部分。

以上只会生成 .gcno 文件。 .gcda 文件在运行时在硬件内部生成。等待应用程序退出或添加您自己的包装器以创建 .gcda 文件。

最后,您需要找到一种方法从您的硬件中提取此 .gcda 文件。

所有abvoe都在
中得到了很好的解释 https://mcuoneclipse.com/2014/12/26/code-coverage-for-embedded-target-with-eclipse-gcc-and-gcov/

关于gcc - 使用 arm-none-eabi-gcc 从 cpp 生成 elf 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13461084/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com