链接器脚本
链接定位是系统级软件开发过程中必不可少的一部分,嵌入式软件开发均属于系统级开发,绝大部分嵌入式软件都涉及到链接定位脚本文件;链接定位脚本使得我们的目标代码组织更加灵活。
脚本的构成:
1. 段
一个可执行程序通常包括:代码段:存放代码的地方
数据段:存放初始化之后的全局变量
Bss段:存放未初始化的全局变量
同样,在用于链接这个程序的链接器脚本中,就会反应这几个段的信息。
2. 起始链接地址
3. 对齐
4. 变量
5. 代码段首文件
例:
SECTIONS{
(table). = 0x30000000; //起始地址为30000000
//代码段
. = ALIGN(4); //对齐方式为4字节对齐
.text :
{
Start.o(.text) //设置的代码段首文件(CPU初始化)
*(.text) //*代表全部文件
}
//数据段
. = ALIGN(4);
.data :
{
*(.data)
}
//Bss段
. = ALIGN(4);
Bss_start = . ; //变量
.bss :
{
*(.bss)
}
Bss_end = . ;
}
时间: 2024-12-26 18:05:07