2

错误:

..\..\corelib\tools\qlocale_tools.cpp: In function 'char* qdtoa(double, int, int
, int*, int*, char**, char**)':
..\..\corelib\tools\qlocale_tools.cpp:2257:25: error: '_MCW_EM' was not declared
 in this scope
..\..\corelib\tools\qlocale_tools.cpp:2257:33: error: '_MCW_DN' was not declared
 in this scope
..\..\corelib\tools\qlocale_tools.cpp:2257:41: error: '_MCW_RC' was not declared
 in this scope
Makefile.Release:5718: recipe for target 'tmp/obj/release_shared/qlocale_tools.o
' failed
mingw32-make[5]: *** [tmp/obj/release_shared/qlocale_tools.o] Error 1
mingw32-make[5]: Leaving directory 'C:/qt5/2012.11/qtbase/src/tools/bootstrap'
Makefile:33: recipe for target 'release' failed
mingw32-make[4]: *** [release] Error 2
mingw32-make[4]: Leaving directory 'C:/qt5/2012.11/qtbase/src/tools/bootstrap'
Makefile:41: recipe for target 'sub-tools-bootstrap-make_first' failed
mingw32-make[3]: *** [sub-tools-bootstrap-make_first] Error 2
mingw32-make[3]: Leaving directory 'C:/qt5/2012.11/qtbase/src/tools'
Makefile:50: recipe for target 'sub-tools-make_first' failed
mingw32-make[2]: *** [sub-tools-make_first] Error 2
mingw32-make[2]: Leaving directory 'C:/qt5/2012.11/qtbase/src'
Makefile:39: recipe for target 'sub-src-make_first' failed
mingw32-make[1]: *** [sub-src-make_first] Error 2
mingw32-make[1]: Leaving directory 'C:/qt5/2012.11/qtbase'
makefile:51: recipe for target 'module-qtbase-make_first' failed
mingw32-make: *** [module-qtbase-make_first] Error 2

信息:

视窗 7 x64 专业版 sp1

MinGW 版本

来自 git 的 Qt5

环境变量:

C:\Python33\;C:\Perl64\site\bin;C:\Perl64\bin;C:\mingw\bin;C:\Program Files (x86)\Programming\Git\cmd;C:\Program Files ( x86)\编程\Git\bin

旧环境变量:

C:\Python33\;C:\Perl64\site\bin;C:\Perl64\bin;C:\Program Files (x86)\AMD APP\bin\x86_64;C:\Program Files (x86)\AMD APP\ bin\x86;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\SystemTools\ATI Technologies\ATI .ACE\核心静态;C:\Program Files (x86)\Programming\Java\jre7\bin;C:\Program Files (x86)\Programming\Windows Kits\8.0\Windows Performance Toolkit\;C:\cygwin\bin\;C:\MinGW \bin\;C:\Program Files\Microsoft\Web 平台安装程序\;C:\Program Files (x86)\Microsoft ASP.NET\ASP.NET Web Pages\v1.0\;C:\Program Files\Microsoft SQL服务器\110\Tools\Binn\;C:\Program Files\Programming\doxygen\bin;C:\Program Files (x86)\Programming\Git\cmd;C:\Program Files (x86)\Programming\Git\bin

配置我使用的选项(配置似乎工作正常,没有错误):

-debug-and-release -opensource -confirm-license -opengl desktop -nomake 演示 -nomake 示例 -nomake 测试

制作命令(dah):mingw32-make

任何有关如何解决此问题的帮助将不胜感激!

编辑1:我做了一些更多的研究,它似乎与OpenGL有关,但没有关于如何解决这个问题。

edit2:我用-no-opengl 配置并运行mingw32-make,得到了同样的错误,所以这里需要更多的ide。

编辑3:如果我改变这一行

_control87(旧位,_MCW_EM|_MCW_DN|_MCW_RC);

在 qlocale_tools.cpp 到

_control87(旧位,MCW_EM);

它一直运行,直到我收到此错误:

c:/mingw/bin/../lib/gcc/x86_64-w64-mingw32/4.7.2/../../../../x86_64-w64-mingw32/bin/ld.exe: 找不到-lQt5Cored0 collect2.exe:错误:ld返回1退出状态

4

1 回答 1

0

c:/mingw/bin/../lib/gcc/x86_64-w64-mingw32/4.7.2/../../../../x86_64-w64-mingw32/bin/ld.exe: 找不到-lQt5Cored0

这是由于 Qt 源代码本身的一个错误,该错误潜入 Git 存储库,因为开发人员在 MSVS 上对其进行了测试,但没有意识到 MinGW 的行为有所不同。现在已经修复(顺便说一句,我当时确实设法使用 VS2012 命令提示符编译了 Qt5);因此,如果您从 Git 获取最新代码,它将正常工作。

于 2013-04-19T00:37:48.957 回答