首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Cygwin提供了新的g++,它似乎破坏了我的代码..。为什么?

Cygwin提供了新的g++,它似乎破坏了我的代码..。为什么?
EN

Stack Overflow用户
提问于 2010-09-08 16:45:42
回答 1查看 300关注 0票数 0

安装:我在GNU编程系列(gcc、g++、make和gdb)中安装了Cygwin,并成功地编译了我正在运行的一个程序。然后我决定将boost安装到Cygwin中,因为我需要在我的程序开发时使用典型的boost工具。所以,使用Cywing setup.exe,我安装了boost。在此之后,我刚刚成功编译并运行的程序就不再工作了。(回想一下,它并不依赖于提振。)

我发现在boost安装时,它还安装了一个新的编译器g++-4.exe,而以前我一直使用r++-3.exe。Boost还象征性地将g++.exe与新编译器连接起来。在我更改回符号链接后,我的旧程序正确编译。

有什么理由我应该使用g++-4而不是g++-3?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-09-08 19:11:00

g++ 3非常古老,gcc社区早已放弃了对它的维护。(GCC 4.3目前是最老的维护版本系列。)在较新的版本中,已经有了许多语言一致性的改进(包括接受有效代码和拒绝坏代码),因此,如果您现在就坚持下去,您将有更轻松的时间继续前进。您可以查看每个系列的发行说明(例如为4.0),了解这些改进以及它们可能需要的代码更改的说明。就我个人而言,当我能够根据精确的语言规范对程序进行推理时,我觉得编程更令人愉快,而且很少被迫理解特定编译器的怪癖。

此外,对g++ 3的支持似乎已经接近尾声,因为Boost 1.44认为GCC 3(.4.6)只是一个单一平台上的“额外测试编译器”。Boost开发是线性的(而不是分支的),因此您可以发现自己处于需要升级以获得bug修复的情况,但随后发现您的平台不再受支持。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3670004

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档