2008-10-20 101 views
4

我正在爲每個生成的我的(相當小的)項目生成doxygen文檔。 我做了以下來實現:將doxygen作爲VS2008中的自定義生成步驟運行

  1. 新增的index.html,這doxygen的產生,該項目
  2. 指定該文件(而不是整個項目)
    • 命令行自定義生成步驟:doxygen ../doc/Doxyfile
    • 輸出:..doc/html/index.html
    • 附加依賴​​: '../bin/foo.exe'

問題在於,我需要構建兩次,直到VS停止告訴我我的項目已過期。
我該如何解決這個問題?

+0

我有VS2008調用自動生成C#代碼的Perl腳本完全相同的問題。我的印象(可能是錯誤的)是,儘管這一步,它會編譯內存中的代碼版本而不是磁盤上的版本,然後通知內存中的版本已過期。 – Sol 2008-10-20 14:30:20

+0

希望有人知道如何解決它! – Sol 2008-10-20 14:32:45

回答

3

當確定是否構建任何內容時,Visual Studio會查看輸出文件是否比輸入文件更早。

您添加了index.html作爲輸入文件,當它實際上是一個輸出文件。添加Doxyfile也不起作用,因爲它不會經常改變。這就是重建項目的原因(因爲它忽略了文件的年齡,並且無論如何都會進行構建)。

這是你想要捕捉的C++文件的變化。如果(正如我懷疑的那樣)doxygen無論如何都會進行增量構建,那麼只需將doxygen步驟作爲Post-build事件添加即可。

相關問題