连接就是将目标文件和运行库中调用的单元进行合并的过程。
运行库其实就是一个一个目标文件的集合,它们的结构和普通的目标文件的结构类似。
经过连接,目标文件中的代码段和数据段就被分别整合到一起了,而且,其中的变量和函数与编译后的区别就是此时它们有了确定的地址了,就是它们的位置经过连接就完完全全确定了。
符号表也会被整合到一起,这个时候重定位信息也能真正发挥作用了。有一点要注意就是在连接形成的可执行文件中,有没有符号表都行,没有符号表也不影响文件的执行,有符号表的话,也就是在调试的时候用的上。
连接的结果就是形成了可执行文件。
以上就是我对连接的一些认识。