CMake报错:无法运行MSBuild获取VCTargetsPath值求助
针对你遇到的CMake Error at CMakeLists.txt:3 (project): Failed to run MSBuild command to get the value of VCTargetsPath: The system cannot find the file specified.错误,尝试以下解决方案:
确认Visual Studio Build Tools组件完整性
打开Visual Studio Installer,检查已安装的Build Tools是否包含Desktop development with C++工作负载。该工作负载包含CMake所需的VCTargets文件,若未安装,勾选后完成修复安装。手动设置VCTargetsPath环境变量
找到Build Tools安装目录下的VCTargets路径(例如C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\MSBuild\Microsoft\VC\v160,路径版本号需匹配你的Build Tools版本),将其添加到系统环境变量VCTargetsPath中,重启终端和VS Code后再尝试生成构建文件。使用Visual Studio开发者命令提示符
打开对应版本的Developer Command Prompt for Visual Studio,在该提示符下进入项目目录并运行CMake命令。该提示符会自动配置所有必要的编译环境变量,避免路径缺失问题。更新CMake版本
你当前使用的CMake 3.14版本较旧,对新版MSBuild的兼容性可能不足。下载并安装最新稳定版CMake(如3.25+)后重新尝试生成构建文件。显式指定MSBuild路径
运行CMake时直接指定MSBuild的完整路径,示例命令如下:cmake -G "Visual Studio 16 2019" -DCMAKE_MAKE_PROGRAM="C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\MSBuild\Current\Bin\MSBuild.exe" ..注意替换路径为你实际的MSBuild安装位置,同时匹配对应的Visual Studio生成器版本。
内容的提问来源于stack exchange,提问作者Hritik Anand

