【问题标题】:Unable to run msbuild for C++ from the command line VS2017无法从命令行 VS2017 为 C++ 运行 msbuild
【发布时间】:2017-06-14 18:58:52
【问题描述】:

我有一个只存在于 Visual Studio 2017 中的项目。它是一个 C++ dll,到目前为止,我在 Visual Studio GUI 中构建它没有任何问题。但是现在我正在尝试设置自动化,它将在命令行上构建项目并将输出文件上传到所需的位置。这是我迄今为止尝试过的(在全新的命令提示符中):

cd C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC>
vcvarsall amd64
cd C:\Users\me\development\MyProject
msbuild MyProject.slnl (or msbuild MyProject\MyProject.vcxproj)

这给了我错误输出

C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\v140\Microsoft.Cpp.Platform.targets(57,5): 
error MSB8020: The build tools for v141 (Platform Toolset = 'v141') cannot be found. To build
using the v141 build tools, please install v141 build tools.  Alternatively, you
may upgrade to the current Visual Studio tools by selecting the Project menu or right-cli
ck the solution, and then selecting "Retarget solution". 
[C:\Users\dev\development\MetaReme\MetaReme\MetaReme.vcxproj]

让我重申一下,我已经在 Visual Studio 2017 中成功构建了针对 v141 工具集的内容,只是在命令行上我遇到了问题。在我的 Visual Studio 安装程序应用程序中,我检查了 VC++ 2017 v141 工具集。我查看了文件系统,在C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\ 中没有v141 文件夹。

谢谢!

【问题讨论】:

  • 当您从 IDE 构建时,您确定要为 amd64 配置构建吗?
  • "Microsoft Visual Studio 14.0" is vs 2015,你确定你使用的是正确版本的开发者命令提示符吗?

标签: c++ command-line msbuild visual-studio-2017


【解决方案1】:

谢谢各位!我在关注https://docs.microsoft.com/en-us/cpp/build/building-on-the-command-line,上面写着“默认情况下,这些工具安装在 drive:\Program Files (x86)\Microsoft Visual Studio version\VC\bin 中。” .显然这些文档已经过时了......我能够让它与以下命令一起工作

cd "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build"
vcvars64
cd "C:\Users\me\development\MyProject"
msbuild MyProject.sln

【讨论】:

  • 运行 vcvars64 并没有为我解决。我发现 VCTargetsPath 被设置为系统变量。删除该变量可以解决问题。
【解决方案2】:

它在提到article的段落的第一部分中说:

在 Visual Studio 2017 中,它们位于 Visual Studio 安装目录的 VC\Auxiliary\Build 子目录中。在 Visual Studio 2015 中,它们位于安装目录的 VC、VC\bin 或 VC\bin\architectures 子目录中,其中架构是本机或交叉编译器选项之一。

当您使用 Visual Studio 2017 时,它们应该在 VC\Auxiliary\Build 中,就像您发现的那样。

另一种查找正确 .bat 文件的方法是通过同一篇文章中提到的命令提示符快捷方式。首先通过展开 start->Visual Studio Year 找到它们,右键单击并找到它们的位置。然后检查他们指向的位置。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-11-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-10
    • 1970-01-01
    • 2021-06-22
    相关资源
    最近更新 更多