我很难理解如何让gcc arm嵌入式工具包中的ld做我想要的事情:
举个例子,我有一些.o文件需要链接。假设我只想在输出中包含名为.foo的一个部分。我将此内容放入命令文件link.ld中:
举个例子,我有一些.o文件需要链接。假设我只想在输出中包含名为.foo的一个部分。我将此内容放入命令文件link.ld中:
SECTIONS{
.foo : {*(.text)}
}
然后我使用"ld -T link.ld file1.o fil2.o -o output.o"命令,并在output.o上使用objdump,它只包含输入文件中的每个部分(),绝对没有名为.foo的部分,这是最令人困惑的部分。为什么输出中没有名为.foo的部分?
我阅读了这篇文章http://www.scoberlin.de/content/media/http/informatik/gcc_docs/ld_3.html,并且看起来很简单,但我无法理解为什么如此简单的链接器脚本根本没有做我想要做的事情。
我一定漏掉了非常明显的东西;有人能解释一下如何精确控制出现在输出文件中的部分以及它们的名称吗?