什么是最低合理支持的GCC版本?

时间:2013-11-19 04:17:27

标签: c++ linux gcc c++11 g++

我一直在我的mac / linux上开发一个针对现代编译器的C ++ 11应用程序,它工作正常,但后来我尝试将它部署到一个非常古老的linux盒子(g ++ 4。1。2:2007年2月)和当然太旧了,可执行文件也无法运行。

这并不奇怪,但现在我想知道是否有标准的时间来支持编译器/标准?

我浏览了一下,但没有提到这一点。当开发人员认为它的生命结束并且不会修补错误时,对编译器版本的支持是否会下降?

1 个答案:

答案 0 :(得分:0)

您是运行gcc(或g++)的人。它是编译器,由开发人员使用。最终用户系统可能没有任何版本的gcc。您需要担心的是glibclibstdc++。但总的来说,Linux并不是针对二进制兼容性。不要指望任何二进制可执行文件在任何其他发行版/主要版本上正常运行。

相反,glibc和libstdc ++小心使用旧内核版本,因此您应该能够在Linux机器上安装(configure + make + install)最新的运行时支持库,然后为此构建应用程序。 / p>

最简单的方法是将目标所具有的分发版和版本安装到虚拟机中。然后安装C ++ 11开发人员工具,并构建您的应用程序。