|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
1. 概论8 E, T: N' t2 l0 P( ^
4 ^( Y) V3 Q( v5 L& D: @每一个链接过程都由链接脚本(linkerscript, 一般以lds作为文件的后缀名)控制. 链接脚本主要用于规定如何把输入文件内的section放入输出文件内, 并控制输出文件内各部分在程序地址空间内的布局. 但你也可以用连接命令做一些其他事情.: W, X$ D% T& P |: E% l- J
连接器有个默认的内置连接脚本, 可用ld--verbose查看. 连接选项-r和-N可以影响默认的连接脚本(如何影响).
8 k$ V: E# ^/ @/ H# W- P5 U-T选项用以指定自己的链接脚本, 它将代替默认的连接脚本。你也可以使用<暗含的连接脚本>以增加自定义的链接命令.
& U- R! i5 ]# u7 f" a: N* }以下没有特殊说明,连接器指的是静态连接器.7 H3 s& }" k; R# G2 `1 k3 \
9 Z: F3 E7 y' L( ]2. 基本概念
/ W, v$ P# D( g& n
" j4 w {# S& F- g2 l" A链接器把一个或多个输入文件合成一个输出文件.
7 u. y+ o( T; y输入文件: 目标文件或链接脚本文件. ) E7 j( K) }4 ^$ J" S. [
输出文件: 目标文件或可执行文件., D; ?! z' d, D, L) s
% Y* ^# k/ j' C
目标文件(包括可执行文件)具有固定的格式, 在UNIX或GNU/Linux平台下, 一般为ELF格式.
( f1 S: |7 U+ v" h2 h3 h6 t8 Q2 w" B2 k
6 u' s* a- |: D+ ~8 p4 Z: e$ X0 O6 h9 `
|
|