【问题标题】:Visual Studio 2005 C++ Compiler slower that Visual Studio 6 Compiler?Visual Studio 2005 C++ 编译器比 Visual Studio 6 编译器慢?
【发布时间】:2009-06-22 14:08:19
【问题描述】:

我们的一个旧 C++ 项目仍在使用 Visual Studio 6。一年一次,我尝试将其转换为更高的 Visual Studio 版本,但这并不容易,因为并非所有代码都是由我们编写的。 无论如何,我在修复了几百行代码后,终于成功地将项目转换为 VS2005。但是编译项目需要很长时间!比 VS6 长得多。

有些类有很多代码行,甚至有几千个。这些只是要在代码中填充大量项目的数组。我知道这不是完美的解决方案,但目前就是这样,VS6 从来没有遇到过问题。

也许我必须调整一些设置以加快速度,但如果它保持现在这样,我会将其保留为 VS6 项目,因为我不想整天坐在办公桌前无所事事。

有什么想法吗?

【问题讨论】:

  • 你说话慢了多少?有些差异是意料之中的。

标签: c++ visual-studio-2005 visual-c++-2005


【解决方案1】:

编译时间的差异是正常的。 VS2005 的 C++ 编译器比 VC6 更符合标准 C++。这两种编译器之间存在巨大差异。

【讨论】:

  • ...我很高兴他们如此不同:)
【解决方案2】:

VS2005 生成更优化的代码,因此必须花费额外的时间来弄清楚如何使其更快。

【讨论】:

  • 是的,这一直是个问题。默认情况下,优化设置为最大。当我关闭它们时,编译时间恢复正常。
【解决方案3】:

看看你是否能找到在 VS05 中编译速度极快、编译速度极慢的最小模块,看看它们有什么共同点。将慢模块中的元素添加到快模块中,直到突然减速。这就是问题的根源。

【讨论】:

    【解决方案4】:

    听起来你的“一年一次升级”落后了几年,不是吗?

    检查以确保您没有关闭预编译的标头。

    【讨论】:

      【解决方案5】:

      获取Incredibuild

      绝对物有所值。
      它所做的是将文件的编译委托给网络上空闲的构建“代理”,获取结果并将其链接到构建协调器上。机器越多越好。构建时间的减少给我留下了深刻的印象。

      【讨论】:

      • 这将是“如何加速 VS2005 构建”问题的答案。
      • 我认为这可能是另一个标题错误的问题...鉴于 OP 帖子的结尾行。
      • Incredibuild 会在您可以做一些有用的事情时诱使您观看构建栏,从而浪费时间。
      猜你喜欢
      • 1970-01-01
      • 2014-01-08
      • 2015-09-18
      • 1970-01-01
      • 1970-01-01
      • 2010-09-08
      • 1970-01-01
      • 2014-06-07
      • 2010-10-12
      相关资源
      最近更新 更多