代码之家  ›  专栏  ›  技术社区  ›  Shcheklein

如何确定glibc(glibcxx)二进制文件的版本取决于什么?

  •  6
  • Shcheklein  · 技术社区  · 14 年前

    众所周知,glibc(据我所知,glibsd++也使用符号版本控制机制)。(详情请参考: How can I link to a specific glibc version )

    问题是如何确定链接器将为libc和libstdc++中的名称选择glibc和glibcxx的确切版本?例如,如何获得这样的结果:

    time -> time@GLIBC_2_5
    ...
    gethostbyname -> gethostbyname@GLIBC_2_3
    

    我们为什么需要这个?在我看来,如果您想最小化glibc/libstdc++的所需版本,它可能很有用。

    1 回复  |  直到 14 年前
        1
  •  9
  •   jilles    14 年前

    你可以尝试的一件事是跑步 objdump -T 你的二进制文件。

    如果您正在考虑链接到旧版本的符号,请注意,这些旧版本可能也依赖于旧的、不同的结构或其他定义。要避免这种情况,请编译并链接旧的、匹配的头文件和库。