我正在尝试理解Linux上共享库的动态链接。给出以下'Relocation'部分'.rela.plt'的转储:
Offset Info Type Sym. Value Sym. Name + Addend
000000373f68 0f8300000007 R_X86_64_JUMP_SLO 0000000000000000 _ZN8CashFlowmIERK7Paym + 0
000000373f70 0f9800000007 R_X86_64_JUMP_SLO 0000000000000000 _Z8printCapPK3CapP8_IO + 0
000000373f78 0f9900000007 R_X86_64_JUMP_SLO 0000000000000000 _ZN13SharedBaggage16ge + 0
000000373f80 0f9c00000007 R_X86_64_JUMP_SLO 0000000000000000 _Z11usdCurrencyv + 0
我有以下问题:
据我所知,r_info的最低3个字节用作无符号索引,指向.dynsym部分以指向符号。那么,如何解释以下重定位部分条目,它们都将0000007作为索引插入到.dynsym部分中?
请问“Sym. Value”是什么?这是符号的实际值(即地址)吗?如果是这样,为什么它们全部都是零?