【发布时间】:2018-09-05 16:01:31
【问题描述】:
虽然在生成的二进制文件或 ELF 文件的上下文中可以清楚什么是节,但文档中的许多地方(独立于使用的编译器)将它们称为输入或输出节。
这些有什么区别?
【问题讨论】:
标签: linker ld elf linker-scripts
虽然在生成的二进制文件或 ELF 文件的上下文中可以清楚什么是节,但文档中的许多地方(独立于使用的编译器)将它们称为输入或输出节。
这些有什么区别?
【问题讨论】:
标签: linker ld elf linker-scripts
链接器使用目标文件(可能还有共享库)并输出
可执行或共享库。输入目标文件由命名的
部分 - .text、.data、.rodata、.bss 等。输出文件也是如此。
它
是链接器工作的主要部分,将所有的 input 部分组合起来
将所有输入对象文件中的相同名称放入单个 输出 部分
在输出文件中使用该名称。例如。输入的所有.text 部分
目标文件对输出文件的.text 部分有贡献。
如果链接器确定某些输入部分是多余的,则可能会从输出文件中丢弃它们。
【讨论】:
__attribute__ ((section ("<section-name>"))) 的文档。此类扩展用于特殊目的。