VC ++ 2008项目总是“过时”

时间:2010-07-30 13:10:49

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

在一个解决方案中,我有两个VC ++项目。项目A具有链接器输入,这些输入是由项目B编译的.obj文件。

Visual Studio(2008)总是告诉我项目A“已过时”,并提示我询问是否要重建它,每次我想运行/调试/构建/等等。甚至在构建整个解决方案之后立即:我做了一个成功的完整构建,然后再次单击Build,它想要重新链接项目A.

如何防止这种情况发生?任何人都明白这里发生了什么?

3 个答案:

答案 0 :(得分:2)

我认为解决方案是停止使用其他项目中的.obj文件。相反,将A和B项目共有的代码分解为自己的静态库C,并将A和B链接到它。

答案 1 :(得分:2)

我刚刚遇到 Visual Studio 2010 (包含和不包含SP1)的问题,感谢Ted Nugent我能够修复它。诀窍是检查项目中列出的所有C ++头文件是否仍然存在,并删除不存在的C ++头文件。显然这是编译器中的一个错误。

答案 2 :(得分:1)

发生了类似的事情。我正在处理使用系统时间的代码,在调试过程中,我对它进行了大量的研究。不知何故,文件得到了一些糟糕的时间戳。在构建中,它显示了哪些文件正在重新编译,所以我只是打开每个文件,强制进行更改(添加空格,删除空格),然后重新保存。

与旧的unix“touch”相似。

在一个项目中,我必须对其包含文件执行相同操作。但在“触摸”这样的文件后,问题就消失了。