本文介绍了包括与GNU劳工处连接脚本二进制文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个工作的链接脚本。我要添加其内容直接从文件拉出(LD不应分析它并提取部分等)的另一数据部分。我该怎么做?

  OUTPUT_FORMAT(ELF32-I386)
ENTRY(开始)
截面
{
  的.text 0x100000处:{
    *(多重)
    *(。文本)
    *(code)
    *(* rodata)
  }
  。数据:{
    *(。数据)
  }
  .bss段:{
    *(BSS)
  }
  kernel_end =。
  roottask_start =。
  。数据:{    在这里我要包含另一个(二进制)文件的全部内容  }
  roottask_end =。
}


解决方案

您可以尝试使用 objcopy把将其转换成一个正常的对象,你可以链接,然后参考它在喜欢你的链接脚本符号会做一个正常的对象。从:

See also the --rename-section option.

这篇关于包括与GNU劳工处连接脚本二进制文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

07-19 00:48