我的环境:
xp、vs2008、wince sdk5、qt everywhere4.8.1
编译前要做如下准备,共5项:
1. replace 3rdparty\zlib and 3rdparty\zlib.pri with same from qt 4.7.3 sources
2. in corelib\tools\qlocale_tools.cpp add the following line
   #include <private/qfunctions_p.h>
3. in corelib\io\qfsfileengine_win.cpp change line 553 
   Fom: 
       return QFileSystemEngine::currentPath();
   To:
       return QFileSystemEngine::currentPath().filePath();
4. in corelib\kernel\qsystemerror.cpp change code from line 104
   From: 
       ret = QString::fromLocal8Bit(strerror(errorCode));
   To:
       ret = QString::fromLatin1(QT_TRANSLATE_NOOP("QIODevice", "System error"));
5. 将 sqlite3.cpp中的:
       #define HAVE_LOCALTIME_S 1
   修改为:
       #define HAVE_LOCALTIME_S 0
configure -platform win32-msvc2008 -xplatform wince50standard-armv4i-msvc2008 -opensource 
-nomake demos -nomake examples -nomake docs -no-qt3support -no-opengl -no-phonon -no-phonon-backend -no-webkit
注意:
该版本nmake confclean会将\src\corelib\global下的qconfig.h和qconfig.cpp清掉。
在nmake confclean之前,保存qconfig.h和qconfig.cpp,nmake confclean之后再拷贝回去。