ld链接脚本语法
语法 | 说明 |
---|---|
ENTRY(symbol) | 将符号symbol的值作为入口地址(主函数)。ld中有多种方法指定入口地址,他们的优先级如下排列。 1. ld中的-e选项 2. 脚本中的ENTRY 3. _start符号 4. .text段第一个字节地址 5. 0 |
STARTUP(filename) | 将文件filename作为链接中的第一个输入文件 |
SEARCH_DIR(path) | 库查找目录 |
INPUT(file, file, …) | 将指定文件作为输入文件 |
INCLUDE filename | 将指定文件包含进链接脚本(这是对脚本来说的,相当与在脚本中写了#include 加入其他脚本) |
PROVIDE(symbol) | 在链接脚本中添加某个符号 |
此外,最基本的命令就是定义段的SECTIONS了,它的格式为:
SECTIONS |
例如:ENTRY(nomain)//以nomain函数作为程序入口
SECTIONS
{
. = 0x08048000 + SIZEOF_HEADERS;//以这个地址作为当前虚拟地址
tinytext : {*(.text) *(.data) *(.rodata) }
/DISCARD/ : {*(.comment)}//抛弃.comment段
|
All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.
Comment