OUTPUT_FORMAT("elf64-x86-64") OUTPUT_ARCH(i386:x86-64) ENTRY(_start) PHDRS { text PT_LOAD FLAGS(5); rodata PT_LOAD FLAGS(4); data PT_LOAD FLAGS(6); } SECTIONS { . = 0x100000 + SIZEOF_HEADERS; .text : ALIGN(4096) { *(.text*) *(.gnu.linkonce.t.*) } :text .rodata : ALIGN(4096) { *(.rodata*) *(.gnu.linkonce.r.*) } :rodata .data : ALIGN(4096) { *(.data*) *(.gnu.linkonce.d.*) } :data .bss : ALIGN(4096) { __bss_start = .; *(.bss*) *(COMMON) __bss_end = .; } :data /DISCARD/ : { *(.comment) *(.note.*) *(.eh_frame*) *(.gcc_except_table*) *(.note.GNU-stack) } }