.text 程序代码
.rodata 只读数据
.data 可读写且需要初始化数据
.bss 可读写的置零初始化数据
经典示例:https://gitee.com/linux-open-source/linux-2.4.0/blob/master/linux-2.4.0/arch/i386/vmlinux.lds
SECTION格式
section [address] [(type)] :
[AT(lma)] [ALIGN(section_align) | ALIGN_WITH_INPUT] [SUBALIGN(subsection_align)] [constraint]
示例
ENTRY(symbol)
SECTIONS
{
. = SIZEOF_HEADERS;
.interp :
{ *(.interp) } :text :interp
. = 0x10000;
.text :
{ head.o(.text); *(.text) }
//.text ALIGN(0x10) : { *(.text) }
//.text 0x10000: { *(.text) }
//.text { o1/*.o(.text); }
. = . + 0x100;
. = ALIGN(0x8000)
//variable = ALIGN(0x8000)
.rodata : { *(.rodata) }
.mdata 0x20000 :
AT ( ADDR (.text) + SIZEOF (.text) )
{ _data = . ; *(.data); _eda