How to use qml on wince6.0?
-
First,I want to know if qml can be used on wince6.0 ?
Second,If qml support wince,I have a few question:
1> on the windows,qml file was running with qmlviewer.exe,on the wince6.0 it need qmlviewer.exe too?
2> on the windows,if i want to use qmlviewer.exe to show qml files,the follows dlls are required:
QtCore4.dll
QtDeclarative4.dll
QtGui4.dll
QtXmlPatterns4.dll
QtScript4.dll
QtOpenGL4.dllon the windce,if it require these dlls too?
3> if I build a project with qml,and have compile it whith wince sdk,can generated exe file be running whithout qmlviewer.exe on wince6.0
Third,my sdk info if list below:
sdk :TE6410 Board
vs2005
i compile the ide follow this url:
http://xdlinux.info/wiki/index.php/Qt-WinCE安装、开发及部署全解
Does any one can help me?
Thanks -
We are using QML on Windows CE 6, so it can definitely be done.
You obviously have to configure your Windows CE build of Qt to include everything that is needed for Qt Quick. And I expect you will have to create your own mkspec file for that specific SDK. (The URL you point to is in Chinese, so I cannot say if it contains the information that you need.)
Our configuration uses the following DLLs:QtCore4.dll
QtGui4.dll
QtDeclarative4.dll
QtScript4.dll
QtNetwork4.dll -
The process of building my sdk is showing below:
First download the following files:1 qt-embedded-wince-opensource-src-4.7.3.zip。
2 vs2005 and vs80sp1-kb926604-x86-chs.exe
3 sdk,TE6410_CE6_SDK.msi
4 Microsoft ActiveSync4.5
Second compile and install:
1 install vs2005 and Microsoft ActiveSync4.5.
2 install sdk:TE6410_CE6_SDK.msi
3 UnZip qt-embedded-wince-opensource-src-4.7.3.zip to D:\qt-ce-4.7.3.
enter into this catalogue D:\qt-ce-4.7.3\mkspecs\wince60standard-armv4i-msvc2005 and modify qmake.conf
CE_SDK = TE6410 Board
CE_ARCH = ARMV4I
4 set enviroment:set path= D:\qt-ce-4.7.3\bin
set qtdir=D:\qt-ce-4.7.3
enter into this catalogue D:\qt-ce-4.7.3
5 run this command: configure -platform win32-msvc2005 -xplatform wince60standard-armv4i-msvc2005 -qt-sql-sqlite.
6 run these command :
set INCLUDE=D:\Program Files\Microsoft Visual Studio 8\VC\ce\include;D:\Program Files\Windows CE Tools\wce600\TE6410 Board\Include\Armv4i
set LIB=D:\Program Files\Microsoft Visual Studio 8\VC\ce\lib\armv4i;D:\Program Files\Windows CE Tools\wce600\TE6410 Board\Lib\ARMV4I
set PATH=D:\Program Files\Microsoft Visual Studio 8\VC\ce\bin\x86_arm;%PATH%
7 nmake
-
The process of building my qt-wince project is showing below:
First set the enviroment:
set INCLUDE=D:\Program Files\Microsoft Visual Studio 8\VC\ce\include;D:\Program Files\Windows CE Tools\wce600\TE6410 Board\Include\Armv4iset LIB=D:\Program Files\Microsoft Visual Studio 8\VC\ce\lib\armv4i;D:\Program Files\Windows CE Tools\wce600\TE6410 Board\Lib\ARMV4I
set PATH=D:\Program Files\Microsoft Visual Studio 8\VC\ce\bin\x86_arm;PATH
Second run these command:
D:\qt-ce-4.7.3\bin\qmake.exe -project -o hello.proD:\qt-ce-4.7.3\bin\qmake.exe -spec D:\qt-ce-4.7.3\mkspecs\wince60standard-armv4i-msvc2005 -win32 -o Makefile hello.pro
D:\qt-ce-4.7.3\bin\qmake -tp vc
Third,open hello.vcproj with vs2005,compile and build project
-
i copy qmlviewer.exe and following dlls to wince6:
QtCore4.dll
QtGui4.dll
QtDeclarative4.dll
QtScript4.dll
QtNetwork4.dll
But when i run qmlviewer.exe,it give the following error:
the program qmlviewer.exe occur some fatel error,and have been forced to cloesd -
I have never tried to use qmlviewer on Windows CE. Our application is a C++ application, so we are just using Qt/QML for the GUI (which consists of a QDeclarativeView widget).
Have you managed to build a Qt Widget application and run it on your Windows CE target?
Also, the DLLs we use is the minimal set of DLLs we have been able to reach through months of tweeking the Qt configuration to make the footprint as small as possible. For a "vanilla" build of Qt for Windows CE I would expect you to need several other DLLs as well, including QtSql, QtXml, QtXmlPatterns and QtSvg. To make sure you've included all the necessary DLLs, I would start by including them all. And then use a tool like Dependency Walker to see exactly which ones you need.
-
1 Yes,i have managed to build a Qt Widget application and run it on your Windows CE target.
2 what is the best methods to develop beautiful program on wince?
a use c#?
b use qt without qml
c use c++ and qml for ui
which is the best way?can you give me some suggest?
3 can you give me some Tutorials about design c++ applications whit qml for ui?
Thank you -
I think it very much depends on the application you want to build, and the kind of user interface you want it to have. I cannot really say anything about C# (except that I prefer Qt, of course... :). Regarding QML vs widgets, we decided to use QML mainly because we want our UI to be more like a phone UI than a desktop UI (small touch screen, always used in fullscreen mode etc.).
To create a C++ application that uses QML, just create a simple Qt application with a QDeclarativeView that shows your QML. If you've built Qt C++ applications before, the documentation of "QDeclarativeView":http://qt-project.org/doc/qt-4.8/qdeclarativeview.html should be enough to get you started.
-
@justzx: You seem to have several Qt / QML / WinCE 6 threads going at the moment. Are they all related to the same problem? I have tried answering on other threads, but by just creating new ones it's quite hard to find out if anything I suggested is working...
We're using QML on WinCE 5 and 6 and our use case seems to be much the same as @ludde, we wanted a non-native looking application that could be prototyped very quickly and so went with QML.
As for the tutorials, a simple Google search should give you many example of QML UI's.
-
SteveKing、ludde ludde Thanks very much,I have successful deploy qml on wince6.0,The required dlls contain:
QtScriptd4.dll
QtNetworkd4.dll
QtSqld4.dll
QtGuid4.dll
QtDeclaratived4.dll
QtCored4.dll
msvcr80d.dll
and if i want to use qmlfile,the qml file must be deploy with exe program.
haha It is so excited to use qml on wince6.0!!!