如何在命令行中使 gcc 链接器输出节大小?

Posted

技术标签:

【中文标题】如何在命令行中使 gcc 链接器输出节大小?【英文标题】:How to make gcc linker output section size at command line? 【发布时间】:2012-12-22 17:42:17 【问题描述】:

我为 MCU 编程。代码和数据的大小很重要,编译后我需要知道这些部分的大小。我知道如何获得这些信息。只需定义

__text_size = SIZEOF(.text);

在链接器脚本文件中,然后我可以在链接器输出的映射文件中获取它的值。 (“.text”是我的链接器脚本文件中定义的一个部分)。 但是,我讨厌每次编译和链接后都打开地图文件并搜索 __text_size。 有没有办法告诉链接器在命令行输出节的大小?以Keil为例,编译后总是输出代码、rodata、data和zi-data大小。

【问题讨论】:

【参考方案1】:

您可以使用size 实用程序:

$size 测试 文本数据 bss dec 十六进制文件名 1153 504 24 1681 691测试

【讨论】:

对不起,我对 gcc 不太熟悉。你能更详细地解释一下吗?我应该把 size 命令放在哪里? 非常感谢。我明白了。

以上是关于如何在命令行中使 gcc 链接器输出节大小?的主要内容,如果未能解决你的问题,请参考以下文章

gcc 链接器如何获取函数的大小?

如何在 Qt 设计器中使控件自动调整大小?

如何在 gcc 命令行中定义字符串文字?

如何在 xcode 自动布局中使对象自动调整大小?

如何在 Nuxt 中使路由区分大小写

使用 Makefile 编译失败但在命令行中成功