【问题标题】:What does the @GLIBC_2.2.5 suffix on symbols do? [duplicate]符号上的@GLIBC_2.2.5 后缀有什么作用? [复制]
【发布时间】:2014-05-01 20:54:47
【问题描述】:

@GLIBC_2.2.5 对 glibc 中的符号有什么作用/含义?

我正在尝试在 64 位 CLFS 系统上构建一个包。我遇到了多个符号链接到 /lib64/libc-2.15.so 的未解决符号问题,但是,所有未解决的符号都有 @GLIBC_2.2.5 后缀。

0000000000107910 T xdr_accepted_reply@GLIBC_2.2.5
0000000000112290 T xdr_array@GLIBC_2.2.5
0000000000109650 T xdr_authdes_cred@GLIBC_2.2.5

所以看起来 xdr 例程存在于 libc-2.15 中,但我不能真正使用它们。我的目标文件中的符号没有那个后缀。例如,.o 上的 nm 仅显示“xdr_accepted_reply”。

我想先了解这一点,因为否则我会被引导到追逐替换库的道路上。 libtirpc 用于获取 XDR 例程,而其他一些库则用于获取 tirpc 所需的缺失加密例程。

【问题讨论】:

    标签: c glibc


    【解决方案1】:

    它们看起来像 Versioning Symbols for Shared Libraries (glibc)

    正如链接后面的内容所指出的,您可以使用:

    objdump -x wrapper-linux-x86-32  //and possibly -64
    

    要获取有关可执行文件的大量信息...

    例如:

    ...
    Version References:
    required from libpthread.so.0:
    0x0d696912 0x00 05 GLIBC_2.2
    0x0d696911 0x00 04 GLIBC_2.1
    0x0d696910 0x00 03 GLIBC_2.0
    required from libc.so.6:
    0x0d696913 0x00 08 GLIBC_2.3
    0x0d696911 0x00 07 GLIBC_2.1
    0x0d696912 0x00 06 GLIBC_2.2
    0x0d696910 0x00 02 GLIBC_2.0
    ...
    

    【讨论】:

      猜你喜欢
      • 2014-10-13
      • 2016-02-24
      • 1970-01-01
      • 2014-02-22
      • 2023-03-18
      • 2011-05-19
      • 2016-05-31
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多