首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Windows上构建C++:使用devenv.com、vcbuild.exe还是MSBuild.exe?

在Windows上构建C++:使用devenv.com、vcbuild.exe还是MSBuild.exe?
EN

Stack Overflow用户
提问于 2010-02-11 14:32:10
回答 4查看 3.2K关注 0票数 2

我的buildbot已经运行了3年,使用devenv.com在Windows上编译项目。

现在,devenv.com很难为64位版本构建:将配置传递为“Debuchx64”将生成命令行错误,这是因为管道字符造成的。在引号之间转义和括起来会导致其他错误,有些是因为目录名称中的空格,有些是因为奇怪的命令行。

我试过vcbuild.exe和MSBuild.exe。vcbuild.exe工作得很完美:我想坚持到底。MSBuild.exe,在另一方面,有一个完全奇怪和复杂的输出,我的同事感到很糟糕。但它在任何地方都被吹捧为建设的方式。

问题是:在devenv.com、vcbuild.exe和MSBuild.exe中,哪种方法最有可能在时间上持续?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2010-02-11 18:53:25

MSBuild (在Visual 2010/.NET 4之前)本身并不构建C++项目。它呼唤着vcbuild.exe。因此,如果您不愿意使用MSBuild,那么对于C++项目,我会坚持这样做。对于托管项目(对于使用VS 2010的C++ ),使用MSBuild。

票数 4
EN

Stack Overflow用户

发布于 2010-06-01 14:20:20

我遇到了同样的问题,并通过Windows-shell-转义管道字符来解决这个问题:

代码语言:javascript
复制
"Debug^|Win32"
票数 3
EN

Stack Overflow用户

发布于 2010-06-19 03:53:13

MSBuild是“最有可能持续”的方法。VCBuild.exe已经死了,它最后一次发布是在2008年。如果MSBuild 4.0需要从VS2008或更早版本构建一个VC项目,它仍将使用它。至于devenv.exe --当然,它只是无头的Visual。在功能上,这与在VS中点击build是一样的。这意味着,现在,它基本上只是传递给MSBuild,但有时它的并行性比msbuild.exe要小。您可能仍然必须使用devenv.exe的主要原因是.vdproj (部署)项目。这些遗留的东西有一个硬编码成VS的构建过程。我推荐一种替代方案,如WiX或Installshield,这是基于MSBuild的。现在,在VS中构建的所有东西都是MSBuild。

简而言之-- MSBuild是未来,除非您有部署项目或其他特殊情况,否则使用它。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2245078

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档