【发布时间】:2015-10-13 11:56:01
【问题描述】:
我使用 Xorax IncrediBuild 构建 Visual Studio 2013(或更高版本)解决方案和项目,它们大多是 .vcxproj 和一堆 .csproj。
我花了一点时间挖掘,但我了解到:
当 IncrediBuild 与常规 Visual Studio 一起使用时,it uses the Devenv.exe by default。
从 5.0 版开始,
BuildConsole.exe支持新的切换:/UseMSBuild到 specifically instruct IncrediBuild to use MSBuild's build engine instead of the default Visual Studio's DevEnv。
因此,对于 Visual Studio 项目,有两种可用模式:
BuildConsole.exe MyProj.vcxproj使用DevEnv.exeBuildConsole.exe MyProj.vcxproj /usemsbuild使用MSBuild.exe
我想了解使用这两个引擎之间是否有任何差异。
我做了一些测试并观察到:
在
DevEnv.exe的情况下,IncrediBuild“正在初始化...”阶段需要稍长的时间。BuildConsole.exe显然会产生不同的输出。构建性能没有(或微不足道)差异。
在构建单个 C/C++ 原生项目 (.vcxproj) 以及整个解决方案 (.sln) 的情况下,使用 DevEnv.exe 与 MSBuild.exe 的优点和缺点 ?
【问题讨论】:
-
不知道我做错了什么,但这完全是主观的。我有 78 个项目,我使用 VS2017 构建进行了“全部重建”,耗时 2:36(m:ss),而使用 Incredibuild 时,它超过了 5m,我只是停止了它。哦,好吧...都使用 DevEnv。
标签: visual-studio build msbuild devenv incredibuild