如何创建一个有效的链接(Link)策略来提升网站流量?

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

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

链接类型+编译时+静态库,整合到可执行文件中+加载时+动态库,在load时loader看到interp节+调用动态连接器+运行时+由代码决定加载哪个,可实现热更新+GCC参数+-o输出文件+-O优化

链接种类
  • 编译时 静态库,整合到可执行文件中

  • 加载时 动态库,在load时loader看到interp节,调用动态连接器

  • 运行时 由代码决定加载那个,可以实现热更新

GCC参数
  • -o outputfile
  • -O Optimize 优化
  • -fpic 位置无关
  • -shared 共享库
  • -static 静态链接,完全链接
  • -D ifdef的参数
  • -I include 路径
  • -L 静态库路径
  • -llib 静态库缩写
链接工作 符号解析

代码中引用的函数和变量

编译的原则是每个源代码文件形成一个目标文件,当需要跨文件或者跨文件夹访问或调用时,即有多个文件,那么在编译时,有些符号并没有实际的地址,符号解析的作用就是让每个符号绑定一个地址。

怎么做?

编译成功的的目标文件是一个ELF格式,有头部、节段、节头部表组成。

其中.symtab 是符号表,模块中所有出现的符号都会在里面。

.rel.text.rel.data 是重定位的信息,标记了.text.data 节段中链接后需要修改的部分的位置

.symtab 中的标志表示了这个符号是本地还是外部,是否需要解析。

阅读全文

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

链接类型+编译时+静态库,整合到可执行文件中+加载时+动态库,在load时loader看到interp节+调用动态连接器+运行时+由代码决定加载哪个,可实现热更新+GCC参数+-o输出文件+-O优化

链接种类
  • 编译时 静态库,整合到可执行文件中

  • 加载时 动态库,在load时loader看到interp节,调用动态连接器

  • 运行时 由代码决定加载那个,可以实现热更新

GCC参数
  • -o outputfile
  • -O Optimize 优化
  • -fpic 位置无关
  • -shared 共享库
  • -static 静态链接,完全链接
  • -D ifdef的参数
  • -I include 路径
  • -L 静态库路径
  • -llib 静态库缩写
链接工作 符号解析

代码中引用的函数和变量

编译的原则是每个源代码文件形成一个目标文件,当需要跨文件或者跨文件夹访问或调用时,即有多个文件,那么在编译时,有些符号并没有实际的地址,符号解析的作用就是让每个符号绑定一个地址。

怎么做?

编译成功的的目标文件是一个ELF格式,有头部、节段、节头部表组成。

其中.symtab 是符号表,模块中所有出现的符号都会在里面。

.rel.text.rel.data 是重定位的信息,标记了.text.data 节段中链接后需要修改的部分的位置

.symtab 中的标志表示了这个符号是本地还是外部,是否需要解析。

阅读全文