Visual studio 2008 在VS2008中将doxygen作为自定义生成步骤运行
我正在为每个构建的(相当小的)项目生成doxygen文档。 为此,我做了以下工作:Visual studio 2008 在VS2008中将doxygen作为自定义生成步骤运行,visual-studio-2008,doxygen,custom-build-step,Visual Studio 2008,Doxygen,Custom Build Step,我正在为每个构建的(相当小的)项目生成doxygen文档。 为此,我做了以下工作: 将doxygen生成的index.html添加到项目中 为此文件(不是整个项目)指定了自定义生成步骤 命令行:doxygen../doc/Doxyfile 输出:.doc/html/index.html 其他依赖项:“../bin/foo.exe” 问题是,我需要构建两次,直到VS停止告诉我我的项目已过时。 如何修复此问题?在确定是否生成任何内容时,Visual Studio会查看输出文件是否比输入文件旧 您
index.html
添加到项目中- 命令行:
doxygen../doc/Doxyfile
- 输出:
.doc/html/index.html
- 其他依赖项:“../bin/foo.exe”
如何修复此问题?在确定是否生成任何内容时,Visual Studio会查看输出文件是否比输入文件旧 您将index.html添加为输入文件,而实际上它是一个输出文件。添加Doxyfile也不会起作用,因为它不会经常更改。这就是重建项目有效的原因(因为它忽略了文件的年代,并且仍然进行构建)
它是你想捕捉的C++文件的变化。如果(正如我所怀疑的)doxygen仍然进行增量构建,那么最好是简单地将doxygen步骤添加为构建后事件。
我遇到了与VS2008调用自动生成C代码的Perl脚本完全相同的问题。我的印象(可能是错误的)是,尽管执行了这一步骤,它还是编译了内存中的代码版本,而不是磁盘上的版本,然后注意到内存中的版本已经过时。希望有人知道如何修复它!您已将生成的文件添加为源文件。你需要反过来做。谢谢你的回答,罗杰,但恐怕我不知道你的意思。我现在从项目中删除了
index.html
,添加了Doxyfile
(这实际上更有意义!),并将自定义构建步骤设置应用于该文件。结果是doxygen根本不会被调用…#更新##我刚刚注意到,在重建解决方案时,doxygen
实际上会被调用。虽然这并不完全是我想要的,但它可能会奏效。