Win 10 上的 QT Creator,“无法检索 MSVC 环境”

Posted

技术标签:

【中文标题】Win 10 上的 QT Creator,“无法检索 MSVC 环境”【英文标题】:QT Creator on Win 10, "Failed to retrieve MSVC Environment" 【发布时间】:2018-04-07 15:52:09 【问题描述】:

QT 的完整错误,在 GUI 无响应时需要一分钟多的时间才会出现:

:-1: error: Failed to retrieve MSVC Environment from "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat x86_amd64": The command "C:\WINDOWS\system32\cmd.exe" could not be started.

我的 QT 项目在 Windows 7 上编译良好,使用 QT 5.6(编译器 MSVC2015 64 位)、QT creator 4.4.0 和 Visual Studio Professional 2015。但是当我尝试运行时,在 Windows 10 上出现此错误QT 5.6(同一个编译器),QT Creator 4.4.1 和Visual Studio Express 2015。错误信息貌似很无厘头,QT怎么找不到cmd.exe?

很明显,QT 缺少 Windows 10 或 VS 中的某些内容,而在超时之前它无法获得这些内容。

--EDIT2--

一些进展:问题的一部分一定是 Express Edition。至少 MSVS2017 Express 没有附带 64 位编译器。

擦除 QT5.6/VS'15 并尝试最新版本(MSVS2017 Community 版和 QT 5.9),我可以从 QtCreator 编译。但是,只有当我打开 QT 的命令提示符时,为 64 位环境运行 vcvarsall.bat 文件,然后从该提示符运行 qtcreator。即:

"\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary"\Build\vcvarsall.bat amd64
qtcreator

所以问题是为什么 QT 不选择 VS 环境变量?我尝试过在线搜索,但我在网上找到的唯一帖子,询问如何初始化 QtCreator.. 仍未得到答复。

--EDIT1--

忽略包含,我一直(试图)安装:

Visual Studio Express 2015 桌面版 (在意识到我的错误并迅速卸载之前曾短暂尝试过适用于 Windows 10 的 Express 2015!) Windows SDK 10.0.10586.212 QT 5.6(带有 MSVC2015 编译器)和捆绑的 QT Creator (4.4.1) 及其调试器

此外,PC 最近被擦除并安装了干净的映像。那是几周前的事了,所以真的没有太多垃圾(除了我尝试安装 VS 和 QT ..?)。


坚韧不拔的细节

搜索此特定错误,最近有 2 个错误提交给 QT。

https://bugreports.qt.io/browse/QTCREATORBUG-19099

检查那里的建议:cmd.exe 在 Windows 10 上启动时间为 10 秒,而在 Windows 7 上启动时间为 3 秒 - 这里不可能是个问题吗?

我的 PATH 环境变量只包含绝对路径。

我查看了注册表,但找不到命令处理器的 AutoRun 键的位置。指定的注册表路径与我在我的机器上看到的不同?

https://bugreports.qt.io/browse/QTCREATORBUG-18886

对此的任何帮助将不胜感激。我只是看不出如何进一步调试。

【问题讨论】:

不是解决方案,因为我还没有(还)完全解决这个问题。但是,加载 vsvarsall.bat 文件所需的时间应该是 如果其他人偶然发现此问题,请提供一些调试建议:bugreports.qt.io/browse/QTCREATORBUG-19099 【参考方案1】:

上面的 cmets 帮助找到了可能的来源。我无法“修复”它,但可以通过打开 Qt 开发人员的 cmd 提示符来解决它,加载适当的 vsvarsall.bat 文件并从同一 cmd 提示符运行 qtcreator。 QtCreator 随后会在启动后超过一分钟无响应,但之后会没事的。

【讨论】:

【参考方案2】:

你在用叮当吗?

我删除了它,现在我没有这个问题了。

【讨论】:

能否请您扩展您的建议? (我可以有根据地猜测 clink 是什么——在 QT 创建者中链接?虽然在网上搜索,但我没有发现任何明显的东西——例如,有 2 个同名的 GitHub 项目。)。抱歉,在这里度过了没有非常高效的一天...【参考方案3】:

我也面临同样的问题。对我来说,罪魁祸首是我安装的一个应用程序,它在每次启动 cmd.exe 之前运行,这会延迟它的启动时间,从而导致问题。删除该应用程序为我修复了它。

【讨论】:

以上是关于Win 10 上的 QT Creator,“无法检索 MSVC 环境”的主要内容,如果未能解决你的问题,请参考以下文章

win7下qt creator 4.5.1打不开

Mac 上的 qmake 缺少 qt-creator

如何在Ubuntu上的某些样式表中运行qt creator?

如何在 Windows 10 上将 Quazip 与 Qt 5.6、Qt Creator 一起使用?

如何用Qt Creator输出helloworld

Qt Creator 卡在 Mac 操作系统上的“启动调试器”中