gcc和libstdc ++前向兼容性

时间:2012-05-18 19:51:07

标签: c++ linux gcc gnu backwards-compatibility

根据ABI Policy and Guidelines,我应该使用

GCC 3.4.0 and libstdc++.so.6.0.0

在每个GNU/Linux发行版(相同的CPU架构)上编译二进制可执行文件,并且安装了更新的libstd++.so.6?这个二进制文件是否与每个libstd++.so.6转发兼容?

1 个答案:

答案 0 :(得分:6)

(为什么不在gcc-help邮件列表上提出这个问题,以便得到知道他们所谈论内容的人的权威答案?)

是的,链接libstdc ++。so.6.0.0意味着二进制文件可以在链接到任何更高版本的libstdc ++时运行。所以版本,但这还不足以确保二进制文件可以在任何GNU / Linux系统上运行。您还需要确保使用旧版本的libc.so(ie.glibc)以及您链接的任何其他库。编译和链接GCC 3.4.0但链接到Glibc 2.15可能意味着你的二进制文件无法在具有Glibc 2.14或更早版本的系统上运行,无论它们具有什么libstdc ++版本。