How to use qml on wince6.0?



  • I want to use qml on wince6.0,And i have compile qt4.7.3 for wince6.0. when i deploy program on wince,it did not work,but it is running smoothly on windows xp,can any one help me?


  • Moderators

    Can you share some error messages from wince 6?
    Otherwise people need a crystal ball for helping.



  • 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.dll

    on 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\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

    Second run these command:
    D:\qt-ce-4.7.3\bin\qmake.exe -project -o hello.pro

    D:\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



  • can you understand the process of building my sdk and build my project? If you can,please give me some help, Possible that i ignore some details,Thank you!



  • 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



  • can you run qmlviewer.exe on wince with these dlls?



  • 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.



  • Thank you SteveKing,what you answer give me a great help.
    All the thread related to this thread,what i want to know is how can i use qml on wince,you can close the other thread,and merge to this one.



  • I use Dependency Walker to find the required dlls,but I can find ceshell.dll coredll.dll mmtimer.dll ws2.dll in the sdk folder



  • 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!!!



  • @justzx: Well done! I'm glad you've got it working.

    Enjoy developing with Qt / QML


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.