为什么Visual Studio 2008总是重建我的整个项目?

Roc*_*net 12 rebuild visual-studio

我有一个Visual Studio项目,包含大约60个C++源文件.我可以做一个构建,它完成没有错误.但如果我再次立即点击F7,它总是会重新编译大约50个源文件.它不会重新编译所有文件,这很奇怪.

我有'启用最小重建'(/ Gm)设置.有什么想法可能会这样做吗?这些文件以后都没有修改日期.

Rob*_*vey 8

您将来的任何文件日期都是?如果更改了时区或更改了系统时钟时间,则会发生这种情况.将来的日期会混淆IDE并在每次F7或F5命中时强制重建.

  • 这种情况一直发生在我身上.仔细检查您的文件日期,包括来自外部来源的标题! (3认同)

小智 7

我已经解决了同样的问题.

在我的情况下,编译器显示警告,如果指定了/ Gm,则需要/ Zi选项.

/ Gm启用"最小重建",这需要.pdb文件中的调试信息.所以,如果你不想使用.pdb,也禁用minumum rebuild - 它解决了我的问题.


Căt*_*tiș 5

最可能的是依赖性问题.

考虑以下可能性:

  • 如果为解决方案中的某些文件定义了自定义生成工具,请确保output属性包含正确的文件名.如果构建工具的输出与输出文件名中指定的输出不对应,则构建器将重建该文件.

  • 如果您有自定义生成事件,请检查这些生成事件的输出是否不影响要生成的文件的依赖关系.

  • 在构建后,尝试将某些输出文件复制或移动到构建文件夹时,我遇到了问题.影响构建过程的输出文件的时间戳的后构建操作将每次确定重建.