ELF文件格式概述(三):静态链接

October 13, 2016 at 8:58 pm

最近忙着搞毕设和玩ED6,所以好像再一次好久没有更新了。本来今天也是应该全心全意搞毕设的,不过开发环境的搭建似乎异常地耗时,所以干脆就先利用这部分时间来继续ELF的篇章了。事实上之前的loader并不需要链接这样高大上的内容,不过从全面了解ELF文件的角度来看,讨论链接相关的问题仍然是相当有必要的。不出意外的话本篇只讨论静态链接的过程。 本文分为如下几个部分: 1. 链接时的符号解析 2. 重定位表 3. 相似段合并 4. 静态库链接 链接时的符号解析 首先我们假设有这样两个文件a.c和b.c,内容如下所示: /* a. c */ extern int shared; int […]