LDSCRIPT 意義 |
尚未結案
|
firewing
一般會員 發表:23 回覆:47 積分:19 註冊:2002-12-13 發送簡訊給我 |
想請問各位先進,在寫Linux embedded system 時makefile 都會
有 "LDSCRIPT" 的描述,但我都不太懂 *.ld 檔案中意義,資料也
都非常有限...請問有人懂嗎?? 可否詳細的解釋一下..謝謝各位先進
OUTPUT_FORMAT("elf32-littlemips", "elf32-bigmips","elf32-littlemips") OUTPUT_ARCH(mips) ENTRY(start) PROVIDE(__stack = 0xd0008000); SECTIONS { .rom 0x8c010000 : { crt0.o (.text) . = ALIGN(0x80); crt0.o (.exceptRam) . = ALIGN(0x100); . = 0x80; crt0.o (.exceptRom) init.o (.text) . = ALIGN(1024); _erom = .; } .imem . : AT ( LOADADDR(.rom) SIZEOF(.rom) ) { _text = . ; *(.imem) . = ALIGN(16); } .text . : AT ( LOADADDR(.imem) SIZEOF(.imem) ) { *(.text) _etext = . ; PROVIDE (etext = .); . = ALIGN(16); _dataStart = .; } .data . : AT ( LOADADDR(.text) SIZEOF(.text) ) { _data = . ; *(.data) _edata = . ; . = ALIGN(16); } . . . . . .rel.dyn . : AT ( LOADADDR(.rodata) SIZEOF(.rodata) ) { *(.rel.dyn) } = 0 _gp = . 0x8000 ; __global = _gp ; _gp = . 0x8000 ; __global = _gp ; .sdata . : AT ( LOADADDR(.rel.dyn) SIZEOF(.rel.dyn) ) { *(.sdata) . = ALIGN(16); } .sbss . : AT ( LOADADDR(.sdata) SIZEOF(.sdata) ) { _bssStart = . ; *(.scommon) *(.sbss) . = ALIGN(16); } .bss . : AT ( LOADADDR(.sbss) SIZEOF(.sbss) ) { *(.bss) *(COMMON) . = ALIGN(16); _bssEnd = . ; } |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |