【发布时间】:2017-01-26 20:59:38
【问题描述】:
有没有办法强制 gcc 或 ld 在输出 ELF 格式文件的末尾放置代码部分?
也许我可以强制他们不要生成除.text 之外的任何其他部分,例如,如果我在.data, .rodata, .bss 和其他部分中没有任何内容?
【问题讨论】:
-
您可以通过编写自定义链接器脚本来做任何事情。阅读手册了解详细信息。
-
正如 Fuz 所说的链接器脚本。我很想知道您想在什么特殊情况下执行此操作?
-
@MichaelPetch 我想在 ELF 的代码部分之后添加一些代码。它只是一个特定的应用程序架构,它生成操作码但不能自行组装,因此需要一个预编译的 ELF,然后附加到它。顺便谢谢你的回答!
-
@RandomGuy 使用 libbfd 生成目标文件,然后将其链接到几乎完成的二进制文件可能是个好主意。只是将内容附加到 ELF 文件中,这听起来就像是麻烦不断。