>我的64位Qt构建没有C 11支持.@H_301_2@>我的Qt构建与C 11是32位.@H_301_2@Qt5使用在线安装程序是32位@H_301_2@>尽管我的生命最后3天已经投入使用,但我无法从源代码中获取64位Qt5.
帮帮我!在我的环境中必然是不相容的,但是呢呢呢
所以,我需要在Windows上使用C 11开发64位Qt应用程序.我发现线程/指南here,here,here,here和here,并没有一个工作或应用,虽然我注意到第二个让我建立Qt 4.8.3与C 11支持(但32位).第三个看起来比它应该更复杂,并且还涉及使用VS 2010进行构建,这似乎是问题的一部分,所以我没有尝试过.我也浪费了很多时间尝试使用不同的编译器(如mingw和clang)来构建以前的版本,所以我很确定cl是我需要使用的.
基本上,我已经到了可以构建Qt4.8.3并从QtCreator 2.6.1中执行64位应用程序的点,但是我无法获得完整的C11支持.它只发现VS 10.0中只有非常有限的C11支持的cl.想出如何让它使用来自VS 11.0的cl将是我的问题的一个解决方案.但是当我尝试
QMAKE_CXX = C:/Program Files (x86)/Microsoft Visual Studio@H_301_2@ 11.0/VC/bin/cl
该构建失败与一个jom错误2,如果我选择使用nmake构建的选项我得到一个类似的错误.
Qt 5应该有全面的C11支持.但是当我尝试从源代码自己构建它,它失败.原因似乎是尽管从VS2012 x64 Cross Tools命令提示符运行configure / make,但是在configure步骤中指定-platform win32-2012,并按照指定的方式指定QMAKE_COMPILER_DEFINES = _MSC_VER = 1700 WIN32@H_301_2@this guide,在win32-msvc2010和win32-msvc2012 mkspecs中,它仍然使用VS 2010中的cl构建,并导致某种冲突.这是我的配置命令:
configure -static -debug-and-release -confirm-license -opensource@H_301_2@ -nomake tests -nomake exampmles -opengl desktop -no-libjpeg -platform win32-msvc2012
当我尝试构建链接器失败时:
在前两个段落的末尾,您可以看到包含msvc-2010,而在控制台输出(未显示)中,moc命令中有-D_MSC_VER = 1600.
所以我很失落,有人可以帮忙吗?
编辑:我曾表示,我正在使用Qt5构建64位应用程序,实际上我可以构建64位应用程序(不支持C 11).如果我尝试这个与Qt5,我得到这个错误:
LNK1112: module machine type ‘X86’ conflicts with target machine type@H_301_2@ ‘x64’
所以这导致在64位模式下编译Qt5,我似乎无法做到.