我正在使用VS2017,MSBuild 15.0版本。我一直在安装taichi(https://github.com/yuanming-hu/taichi)。我遇到了很多错误,并试图逐步解决每个问题,现在我陷入了以下错误。我有MSbuid 15.0,但它正在寻找版本4.0。
Build FAILED.
"C:\Users\5000\Documents\spgrid_topo_opt-master\taichi-master\build\taichi.sln" (default target) (1) ->
"C:\Users\5000\Documents\spgrid_topo_opt-master\taichi-master\build\ZERO_CHECK.vcxproj" (default target) (2) ->
(SetTelemetryEnvironmentVariables target) ->
C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\Common7\IDE\VC\VCTargets\Microsoft.Cpp.DesignTi
me.targets(491,5): error MSB4062: The "SetEnv" task could not be loaded from the assembly C:\Program Files (x86)
\Microsoft Visual Studio\2017\BuildTools\Common7\IDE\VC\VCTargets\Microsoft.Build.CppTasks.Common.dll. Could not
load file or assembly 'Microsoft.Build.Utilities.Core, Version=15.0.0.0, Culture=neutral, PublicKeyToken=b03f5f
7f11d50a3a' or one of its dependencies. The system cannot find the file specified. Confirm that the <UsingTask>
declaration is correct, that the assembly and all its dependencies are available, and that the task contains a p
ublic class that implements Microsoft.Build.Framework.ITask. [C:\Users\5000\Documents\spgrid_topo_opt-master\tai
chi-master\build\ZERO_CHECK.vcxproj]
0 Warning(s)
1 Error(s)
答案 0 :(得分:0)
编辑PATH环境变量,以确保包含msbuild.exe的目录的第一个路径是Visual Studio 2017附带的路径。这可能是以下路径之一,具体取决于您使用的版本以及是否将其安装到默认位置。
C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\MSBuild\15.0\Bin\
C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin\
答案 1 :(得分:0)
1。请打开VS2017的开发人员命令提示符(带有构建工具),然后键入构建命令,例如:msbuild ZERO_CHECK.vcxproj
2。检查是否有任何区别,如果同一问题仍然存在,请打开vs安装程序,然后将构建工具更新到最新版本。然后构建C ++项目以检查是否有帮助
我配置了与您类似的环境。并在.vcxproj文件中使用SetEnv task。但是在构建项目时,一切都很好。
因此,如果以上所有方法均无法解决问题,则可能是:您以编程方式调用msbuild 。如果是这样,也许您可以从this issue获得一些帮助:
尝试binding redirection,这要感谢 Nicolas 。
此外,您可以选中this thread。
任何更新都可以随时与我联系:)