VS每次都重複編譯的問題

現象:沒有改動代碼,每次都重新編譯

    編譯時提示“ 解決Creating "...unsuccessfulbuild" because "AlwaysCreate" was specified.”

原因1:時間問題,所創建的文件的時間比如是:2011-09-22 09:03:22,那麼你的系統時間之前被你改動過當前時間是:2011-08-22 09:03:22。這下好了,vs每次編譯的時候都會檢查每個文件的最後修改日期,發現是上一個編譯時間之後的,都會重新編譯。所以在這一個月內,每次都會重新編譯文件。

解決

a.將文件稍作修改,加個註釋之類的。然後重新保存,讓其和系統時間一致。這樣的話,可能有大量的文件,都需要這樣做。

b.最好的方法,還是直接修改系統的時間。讓其正常。就能解決。


原因2:沒有啓用/Gm編譯選項。

解決:

設置工程屬性,爲以下選項:

C/C++ -> Code Generation -> Enable Minimal Rebuild: Yes(/Gm)

C/C++ -> Genera -> Debug Information Format: Program Database for Edit & Continue (/ZI), 或者 Program Database (/Zi)


得解,反正,我的是通過第二種方案解決的。


原因3:可能是項目中包含了一些無關的文件,如readme.txt,  *.proj, 

解決:1.把顏色不對的都刪除,就可以了

    2.全部重新編譯


如果找到包含無效的文件呢?

方法1:

打開工程,確保當前工程是“顯示所有文件”而不是“顯示所有文件夾”的方式,雙擊各個文件,如果找不到,說明失效了,刪除之。

方法2:

原文出處:http://blog.csdn.net/favorrank/article/details/20363007

1. 在VS2010 安裝目錄下的找到devenv.exe.config  推薦Everything

2.在</configSections> 下面一行添加

<system.diagnostics>
  <switches>
    <add name="CPS" value="4" />
  </switches>
</system.diagnostics>

3. 重啓VS

4. 運行dbgview,然後編譯項目,這時候debugview會有log出來。(dbgview好像記錄的是整個系統的log,所以不用關聯vs)

5. 用查找(Ctrl+F)找字符串 is missing, 然後就能看到是哪個文件有問題

6. 在項目中找到那個文件 刪除

7. 好像每次只能定位一個文件,還有問題請重複4

8. 如果發現文件刪了還是有問題 請重新編譯這個工程


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章