Rog*_*mbe 168 msbuild build-process visual-studio
我们的构建服务器花了太长时间来构建我们的一个C++项目.它使用Visual Studio 2008.有没有办法让devenv.com记录在解决方案中构建每个项目所花费的时间,以便我知道在哪里集中精力?
在这种情况下,改进的硬件不是一种选择.
我已经尝试设置输出详细程度(在工具/选项/项目和解决方案/构建和运行/ MSBuild项目构建输出详细程度下).这似乎在IDE中没有任何影响.
从命令行运行MSBuild时(对于Visual Studio 2008,它需要是MSBuild v3.5),它显示结束时经过的总时间,但不显示在IDE中.
我真的想要一个解决方案中每个项目的时间报告,以便我可以找出构建过程花费时间的地方.
或者,因为我们实际上使用NAnt来驱动构建过程(我们使用Jetbrains TeamCity),有没有办法让NAnt告诉我每一步所花费的时间?
Jes*_*erE 192
菜单工具 → 选项 → 项目和解决方案 → VC++项目设置 → 构建时间应该有效.
Dav*_*ore 81
转到工具→选项→项目和解决方案→构建和运行→MSBuild项目构建输出详细程度 - 设置为"正常"或"详细",构建时间将显示在输出窗口中.
Seb*_*ian 32
对于MSBuild项目(例如所有.Net-Projects):
单击Tools -> Options
,然后选择Projects and Solutions -> Build and Run
.更改MSBuild project build output verbosity
到Normal
.因此,它将在其构建的每个解决方案项目中显示经过的时间.但不幸的是,所有项目都没有经过时间总和.您还将看到Build started Timestamp
FOR C/C++项目:
单击Tools -> Options
,然后选择Projects and Solutions -> VC++ Project Settings
.
更改Build Timing
到Yes
.
ope*_*och 13
我创建了一个扩展来测量构建时间并在图表中显示事件的顺序:Visual Studio Build Timer。
它在 Visual Studio 市场上可用,适用于 VS2015、VS2017 和 VS2019。
除了显示哪些项目需要更长的时间之外,该图表还有效地显示了它们之间的依赖关系,即需要等待其他项目的项目,这有助于确定需要打破哪些依赖关系以增加构建的并行度。
如果您坚持使用VS2005,则可以使用vs-build-timer插件.在构建完成时,它显示了所花费的总时间和每个项目持续时间的(可选)摘要.
免责声明; 我写的.是的,我需要创建一个安装程序...有一天!
由于您的问题涉及从命令行使用 DevEnv,我还建议使用MSBuild(它可以在不修改的情况下构建 .sln 文件)。
msbuild /fl /flp:Verbosity=diagnostic Your.sln
Run Code Online (Sandbox Code Playgroud)
msbuild /?
将向您展示文件记录器的其他有用选项。
小智 5
如果您想可视化您的构建,您可以使用 IncrediBuild。IncrediBuild 现在作为 Visual Studio 2015 Update 1 的一部分免费提供独立模式(未分发,但仅用于本地机器上的 8 个内核)
免责声明:我为 IncrediBuild 工作
归档时间: |
|
查看次数: |
67278 次 |
最近记录: |