ELF - 不合并重定位中使用的符号

时间:2016-11-06 12:46:57

标签: compiler-construction code-generation elf relocation

我正在尝试将重定位发送到另一个文件中定义的符号,因此对GCC进行了反向设计并进行了此重定位:

Num:    Value          Size Type    Bind   Vis      Ndx Name
  2: 0000000000000000     0 NOTYPE  GLOBAL DEFAULT  UND _R_Print

这个符号(在带有重定位的文件中,这实际上定义了符号):

   Num:    Value          Size Type    Bind   Vis      Ndx Name
     4: 0000000000000000     0 NOTYPE  GLOBAL DEFAULT  UND _R_Print
     8: 00000000004000db     0 NOTYPE  GLOBAL DEFAULT    1 _R_Print

但是,当我将其与定义符号的文件链接时,重定位将解析为0(因此必须遵循未定义的符号)并且符号不会合并(链接的可执行文件的符号表):

if h >= 65 and h < 75:
   lcd.set_cursor(0,1)
   lcd.message("Medium")

这里发生了什么,为什么没有组合符号(ld链接以相同方式定义的其他符号,反之亦然(我定义它们,我的汇编代码重新定位它们)细

0 个答案:

没有答案