【问题标题】:What do I need to look out for when I switch compilers from GCC 3.4.2 to a GCC 4.4.2 or to ICC?当我将编译器从 GCC 3.4.2 切换到 GCC 4.4.2 或 ICC 时,我需要注意什么?
【发布时间】:2010-04-25 12:32:53
【问题描述】:

我正在使用的项目是使用 GCC 3.4.2 编译的。我正在考虑切换到更新的编译器。但是,如果风险不为人所知,该项目正处于我们不会做出任何重大改变的阶段。

切换编译器时会出现什么样的问题?

GCC 4.x 与 GCC 3.4.2 相比有什么好处?

ICC 比它有什么好处?

【问题讨论】:

    标签: linux gcc icc


    【解决方案1】:

    好处主要是性能和代码大小。后来和不同的编译器通常有更好或更清晰的错误和警告。

    幸运的是,虽然编译项目可能会遇到麻烦,但要让它运行起来还是需要做一些工作,一旦它运行起来,除了性能之外,它的行为极有可能是相同的。如果您的代码执行大量浮点运算,则需要阅读并理解所有浮点选项,因为这是最有可能改变行为的地方。

    【讨论】:

    • 什么麻烦?你的意思是现在被禁止但以前没有的事情?
    • 差不多就是这样,是的。基本上,警告会升级为错误,因此您必须修复它们。项目越干净,你得到的就越少。如果您有良好的单元测试(不太可能用于 C 项目),那么一旦它编译,它们应该会显示一切正常。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-16
    • 1970-01-01
    • 2021-06-27
    相关资源
    最近更新 更多