Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/visual-studio/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用msvc为Windows构建Qt-Qmakespec错误_Windows_Visual Studio_Qt_Build_Msvc12 - Fatal编程技术网

使用msvc为Windows构建Qt-Qmakespec错误

使用msvc为Windows构建Qt-Qmakespec错误,windows,visual-studio,qt,build,msvc12,Windows,Visual Studio,Qt,Build,Msvc12,我正在尝试使用Visual Studio 2013静态构建Qt 为了做到这一点,我遵循 1) ActivePerl 5.20已下载、安装并添加到路径中 2) qt-everywhere-enterprise-src-5.3.1的归档文件在C:\qt\enterprise_2中下载并解压缩 3) 我打开msvc 2013命令提示符,并将目录更改为:C:\Qt\enterprise\u 2\Qt-everywhere-enterprise-src-5.3.1 4) 从这里开始,我向路径添加了两个新元

我正在尝试使用Visual Studio 2013静态构建Qt

为了做到这一点,我遵循

1) ActivePerl 5.20已下载、安装并添加到路径中

2) qt-everywhere-enterprise-src-5.3.1的归档文件在C:\qt\enterprise_2中下载并解压缩

3) 我打开msvc 2013命令提示符,并将目录更改为:C:\Qt\enterprise\u 2\Qt-everywhere-enterprise-src-5.3.1

4) 从这里开始,我向路径添加了两个新元素:

设置路径=C:\Qt\enterprise\u 2\Qt-everywhere-enterprise-src-5.3.1\qtbase\bin;C:\Qt\enterprise_2\Qt-everywhere-enterprise-src-5.3.1\gnuwin32\bin;%路径%

5) 我定义QMAKESPEC是为了使用msvc:SET QMAKESPEC=win32-msvc2013

6) 最后,我启动编译: 配置-商业-nomake测试-nomake示例-调试-静态

如果我跳过第5部分),我会收到

我得到的答复是: QMAKESPEC环境变量设置为“win32-msvc2013”,该平台不受支持

如果我跳过步骤6,我将获得: “无法从环境中检测平台。请使用-platform commandlineargument或设置QMAKESPEC环境变量,然后再次运行configure”

但是,根据Qt支持中心:

1) “win32-msvc2013”是与Visual Studio一起使用的正确QMAKESPEC

2) 如果我们使用VisualStudio命令提示符(正如我所做的那样),而不是普通的命令提示符,那么设置QMAKESPEC是可选的,因为VisualStudio应该在开始时设置正确的参数

那么,有人知道我如何解决这些错误吗


顺便问一下,是否有人知道是什么将Qmakespec定义为与“受支持的平台”相对应?

也有同样的问题,请先查看mkspecs文件夹(从存档中),确保您的平台在那里,可能不受支持,或者查看以下内容:


如果您的平台受支持,并且您的mkspecs文件夹中有它,那么您不知道您的问题是什么

显然,mkspec文件夹中的大部分文件要么在我提取归档文件时无法复制,要么随后被销毁。很可能是后者,因为每次我尝试启动编译时,一些源文件都会被删除


我找到的解决方案是在每次编译之前从存档中重新创建源文件。

根据文档,该平台是受支持的,但它不在我的文件夹中。