关于Linux的二进制兼容性

时间:2013-12-27 11:42:03

标签: c++ linux gcc binary-compatibility

如果我得到一些C ++代码,比如Ubuntu上的GCC 4.8,代码没有GUI /接口,只调用标准Linux库,那么二进制文件可以在RHEL 5/6上运行,而且版本较旧的GCC完美无缺?

2 个答案:

答案 0 :(得分:4)

通常它不能。它会抱怨libc过于陈旧。

如果你静态地链接libstdc ++并小心避免使用更新的glibc功能,你可能会侥幸逃脱它。但后者并不总是可行的。与libc的静态链接不受官方支持,可能有效或无效。

答案 1 :(得分:2)

问题可能比Glibc libstdc++(您确实可以静态链接)或GCC本身更多。

您可以使用替代Libc,例如MUSL libc(对于静态链接应该更友好)

此外,可能存在一些内核依赖性。