Build Qt 5.2 for windows ce 6



我试图在安装了ActivePerl等软件的情况下,使用Visual Studio 2005 Professional在Windows 7 64位计算机上构建qt 5.2.1(opensource.zip)。我使用了Visual Studio 2005命令提示符和以下行进行配置:

configure -platform win32-msvc2005 -xplatform wince60standard-armv4i-msvc2005 -opensource -nomake examples

其在大约2分钟后结束于以下输出:

…
qglobal.cpp
qmalloc.cpp
qlibraryinfo.cpp
qnumeric.cpp
qlogging.cpp
D:qt-source5.2.1qtbasesrccorelibglobalqlogging.cpp(96) : error C3861:             “GetConsoleWindow”: identifier not found.
Code will be generated…
NMAKE : fatal error U1077: ““C:Program Files (x86)Microsoft Visual Studio     8VCBINcl.EXE”“: return code “0×2”
Stop.
Building qmake failed, return code 2

我还试着做了一个简单的:,

configure

在Visual Studio 2005命令提示符->中出现相同错误。有人知道这里出了什么问题吗?我是做错了什么还是错过了什么?我还把这篇文章发布到了一个线程的qt论坛上,该线程是由一个有类似问题的用户创建的->http://qt-project.org/forums/viewthread/36177/但是没有人回答。

编辑:今天我在QT论坛上更新了我的问题。请参阅->http://qt-project.org/forums/viewthread/36177/我修改了问题文件qtbase\src\corelib\global\qlogging.h,并在上面添加了以下内容:

#ifndef _WIN32_WINNT 
#define _WIN32_WINNT 0×0500 
#endif

我在搜索"getConsoleWindow"问题时找到了这个解决方案。参考资料在此处记为备注->http://msdn.microsoft.com/en-us/library/windows/desktop/ms683175(v=vs.85).aspx在此之后,我的配置运行良好,没有任何问题。但现在我在调用nmake后预计会出现以下错误。nmake运行约30分钟后,我得到了以下输出:

d:readonlyqtsrcqtbaseincludeqtcore../../src/corelib/tools/qvector.h(666) : error 
C2244: 'QVector<T>::erase' : unable to match function definition to an existing   declaration definition 'QVector<T>::iterator     QVector<T>::erase(QTypedArrayData<T>::iterator,QTypedArrayData<T>::iterator)'
existing declarations
'QTypedArrayData<T>::iterator QVector<T>::erase(QTypedArrayData<T>::iterator)'
'QTypedArrayData<T>::iterator QVector<T>::erase(QTypedArrayData<T>::iterator,QTypedArrayData<T>::iterator)'

还有一些错误,但都与QVector::insert和QVector::erase有关。我在谷歌上搜索了一下,发现这里有一个类似的问题,也没有回复:http://qt-project.org/forums/viewthread/36735我想我不得不说,我是为自定义ce-sdk编译的。因此,我更改了qtbase\mkspecs\wince60standard-armv4i-msvc2005\qmake.conf,并在其中添加了其他包含和库。我还在那里使用以下定义:

DEFINES += WINCE WINDOWS WINDOWS_CE_OS _WIN32_WCE=0×600 UNDER_CE=0×600 ARM _ARM ARMV4I  UNICODE UNICODE _USE_32BIT_TIME_T _CRT_SECURE_NO_DEPRECATE $$CE_ARCH _AMRV7 armv7 ARM QT_NO_CLIPBOARD QT_NO_ACCESSIBILITY QT_NO_NATIVE_GESTURES QT_NOSTANDARDSHELL_UI_MODEL

为ce编译qt 5.2.1有那么难吗?我应该使用较旧版本的qt吗(我至少需要qt5来处理JSON)?关于这个问题有什么建议吗?

使用JSON的第三方库。Visual Studio 2005的编译器太旧。例如-joncpp或QJson。

相关内容

  • 没有找到相关文章

最新更新