GCC链接时如何进行代码重定位?

2026-05-27 19:440阅读0评论SEO教程
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计6038个文字,预计阅读时间需要25分钟。

GCC链接时如何进行代码重定位?

作:或:致敬,10+年嵌入式式开发老兵,专注于:C++、嵌入式、Linux。+关注下方公众号,回复【书籍】,获取Linux、嵌入式领域经典书籍;回复【PDF】,获取所有原创文章(PDF格式)。

作 者:道哥,10+年嵌入式开发老兵,专注于:C/C++、嵌入式、Linux。

关注下方公众号,回复,获取 Linux、嵌入式领域经典书籍;回复,获取所有原创文章( PDF 格式)。

目录
  • 示例代码
  • sub.o 文件内容分析
      • 段信息
      • 符号表信息
  • main.o 文件分析
      • 段信息
      • 符号表信息
          • 绝对寻址
          • 相对寻址
      • 重定位表信息
  • 可执行程序 main
      • 段信息
      • 符号表信息
      • 绝对地址重定位
      • 相对地址重定位
  • 总结

别人的经验,我们的阶梯!

最近因为项目上的需要,利用动态链接库来实现一个插件系统,顺便就复习了一下关于Linux中一些编译、链接相关的内容。

在链接的过程中,符号重定位是比较麻烦的事情,特别是在动态链接的过程中,因为需要考虑到很多不同的情况。

这篇文章作为第一篇,先来聊一聊静态链接中的重定位过程。

阅读全文
标签:定位

本文共计6038个文字,预计阅读时间需要25分钟。

GCC链接时如何进行代码重定位?

作:或:致敬,10+年嵌入式式开发老兵,专注于:C++、嵌入式、Linux。+关注下方公众号,回复【书籍】,获取Linux、嵌入式领域经典书籍;回复【PDF】,获取所有原创文章(PDF格式)。

作 者:道哥,10+年嵌入式开发老兵,专注于:C/C++、嵌入式、Linux。

关注下方公众号,回复,获取 Linux、嵌入式领域经典书籍;回复,获取所有原创文章( PDF 格式)。

目录
  • 示例代码
  • sub.o 文件内容分析
      • 段信息
      • 符号表信息
  • main.o 文件分析
      • 段信息
      • 符号表信息
          • 绝对寻址
          • 相对寻址
      • 重定位表信息
  • 可执行程序 main
      • 段信息
      • 符号表信息
      • 绝对地址重定位
      • 相对地址重定位
  • 总结

别人的经验,我们的阶梯!

最近因为项目上的需要,利用动态链接库来实现一个插件系统,顺便就复习了一下关于Linux中一些编译、链接相关的内容。

在链接的过程中,符号重定位是比较麻烦的事情,特别是在动态链接的过程中,因为需要考虑到很多不同的情况。

这篇文章作为第一篇,先来聊一聊静态链接中的重定位过程。

阅读全文
标签:定位