应该使用哪个4.cc版本的gcc?

时间:2020-03-05 18:44:25  来源:igfitidea点击:

我工作的产品组当前使用的是gcc 3.4.6(我们知道它很古老),用于大型的低级c代码库,并且想要升级到更高版本。我们已经看到,在我们对其进行测试的所有硬件平台上测试不同版本的gcc 4.x均具有性能上的优势。但是,我们非常害怕c编译器错误(历史上有很好的理由),想知道是否有人了解我们应该升级到哪个版本。

人们是否将4.3.2用于大型代码库,并认为它可以正常工作?

解决方案

回答

我没有适合特定版本,但是为什么不安装4.X和3.4.6?然后,我们可以尝试使代码在两个版本上均保持编译,并且如果遇到4中的一个显示停止错误,则有退出策略。

回答

如果我们对OpenMP感兴趣,则需要转到gcc 4.2或者更高版本。我们在大约5M行的代码库上使用4.2.2,并且没有任何问题。

回答

当我将项目从GCC 3迁移到GCC 4时,我进行了一些测试,以确保前后的行为相同。我们可以运行一组(希望是自动化的)测试来确认正确的行为吗?毕竟,我们需要"正确的"行为,而不一定是GCC 3行为。

回答

gcc的最佳质量控制是linux内核。 GCC是基本上所有主要的开源C / C ++程序的首选编译器。一个主要的Linux发行版中发布的GCC,尤其是类似4.3.X的GCC应该很好。

GCC 4.3还为较新的cpus优化提供了更好的支持。

回答

关于4.3.2,我什么也没说,但是我的笔记本电脑是使用GCC 4.3. {0,1}构建的Gentoo Linux系统(取决于每个软件包的构建时间),而且我还没有发现任何问题。但是,这主要只是标准的台式机使用。如果我们有任何奇怪的代码,里程可能会有所不同。