Windows下Stack编译test-framework找不到System.Console.MinTTY.Win32如何解决
错误原因
编译失败的核心原因是你当前使用的Stack快照内置的Win32包版本过低(仅2.6.2.1),不满足mintty-0.1.3依赖要求的最低2.13.1版本,test-framework间接依赖mintty包,因此触发编译错误。
解决方法
你可以任选以下任意一种方案修复:
- 方案1:指定兼容旧版Win32的mintty版本
打开项目根目录的stack.yaml文件,找到extra-deps配置项,添加如下内容:
保存后重新执行extra-deps: - mintty-0.1.2stack build即可编译成功。 - 方案2:升级Win32包到满足要求的版本
如果你需要使用新版mintty,可以在stack.yaml的extra-deps中添加以下内容,同时升级Win32和mintty:
保存后重新执行extra-deps: - Win32-2.13.3.0 - mintty-0.1.3stack build即可。 - 方案3:更换更新的Stack快照版本
直接修改stack.yaml中的resolver字段为LTS 19.0及以上的版本,这类新快照内置的Win32版本已经满足依赖要求,无需额外配置依赖,修改后重新编译即可。
如果修改配置后仍存在编译缓存问题,可以先执行stack clean清理缓存后再执行编译命令。
内容的提问来源于stack exchange,提问作者Mark Seemann
相关产品推荐
相关产品推荐

