linker脚本文件知识

linker脚本文件用于控制链接过程,描述输入文件到目标文件的内容分布和内存映射。它包含脚本命令,如SECTIONS,用于定义内存布局。文件以文本格式编写,支持注释和C语言类似的运算符。linker脚本可以自定义或作为默认脚本的补充,并通过-T选项指定。
摘要由CSDN通过智能技术生成

linker脚本文件的作用

linker脚本文件是用来控制link过程的文件,文件中包含内容为linker的处理命令,主要用于描述输入文件到输出文件(目标文件)时各个内容的的分布及内存映射等等。linker文件可以自己提供,也可以有ld过程自己生成,当使用缺省的linker脚本文件时,ld的命令选项将会对其产生一定的影响,GNU编译环境中可以通过-T命令指定相应的liner脚本,在使用-T时,指定的linker脚本文件会完全取代缺省linker文件。当作为缺省linker文件的补充时,不需要使用-T选项,而将linker脚本直接作为输入文件处理,此种情况下新的linker脚本文件不会替换缺省的脚本文件。下图为ARM版本的编译示例过程,可以看看ARM link在其过程中的作用

Linker脚本文件格式

linker脚本文件是使用文本格式进行编写的,由一连串的脚本命令构成。脚本由关键字、参数等组成,各个命令之间由分号分割。注释方式类同C语言,使用/*和*/的使用方式。文件名及格式等字符串可以直接使用,如果存在特殊字符可以加用双引号。linker脚本文件构成:linker脚本文件中包含一些变量符号,运算表达式,函数及相应命令组成。一个简单的示例如下:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值