MSBuild error: MSB8066 custom build for ‘‘ exited with code 3

在使用VS2019构建程序时遇到MSB8066错误,可能原因是未安装CMake。解决方案是访问CMake官网下载相应版本的.msi安装文件,安装过程中确保添加CMake到系统PATH,以便所有用户使用。完成安装后,程序编译通常能成功。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近在使用VS2019 build程序的时候出现了一个问题:

MSB8066 custom build for '' exited with code 3

 错误信息上面可以看到,这个问题涉及到Cmake文件,那么根据自身情况分析,可能是没有安装CMake, 那么我们可以在官网下载https://cmake.org/download/icon-default.png?t=N2N8https://cmake.org/download/

根据自己的电脑版本下载,尽量下载.msi文件,可以直接连网安装,不需要手动配置环境变量。

 

 安装步骤中,有一个选项需要重新选择一下,Add CMake to the system PATH for all users

 后面就是下一步,直到完成,然后再去build我们的程序就能顺利编译成功啦。

### 解决 MSBuild 工具版本不匹配问题 当遇到 MSBuild 错误 `MSB4132` 并提示工具版本 2.0 不可用时,可以考虑将工具版本更改为 4.0 来解决问题。具体操作如下: #### 修改项目文件中的 ToolsVersion 属性 对于 Visual Studio 2008 创建的项目,默认情况下会使用较旧的 MSBuild 版本(通常是 2.0 或 3.5)。为了使这些项目能够兼容更新后的开发环境,可以在项目的 `.proj` 文件中手动修改 `<Project>` 节点下的 `ToolsVersion` 属性值为 "4.0"[^1]。 ```xml <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0"> <!-- 其他配置项 --> </Project> ``` #### 注册表设置调整 由于卸载了 .NET Framework 4 导致注册表路径 `HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSBuild\ToolsVersions\4.0` 下缺少必要的键值,因此需要重新创建此路径并添加正确的 `MSBuildToolsPath` 值指向新的框架位置。 - 打开 Windows 注册表编辑器 (regedit.exe); - 浏览到上述提到的位置; - 新建名为 `MSBuildToolsPath` 的字符串值,并将其数据设为新安装的 .NET Framework 安装目录下 tools 子文件夹的实际路径,例如 `"C:\Windows\Microsoft.NET\Framework\v4.0.30319"`。 #### 替换 cvtres.exe 可执行文件 某些特定场景下,如构建过程中涉及到资源编译,则可能还需要替换掉旧版的 `cvtres.exe` 文件以确保整个过程顺利进行[^2]。通常可以从更高版本 SDK 中获取该程序副本覆盖至相应系统目录即可完成修复工作。 通过以上方法应该能有效处理因不同版本间差异所引发的一系列兼容性难题。值得注意的是,在实施任何更改之前建议先备份好原始状态以便出现问题时快速回滚恢复。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值