QML applications do not run on WEC7



  • Hello,
    I have built the Qt 5.3.2 libraries for WEC7. I used "wince70embedded-armv4i-msvc2008" as template and replaced the SDK to "mySDK" and CE_arch to armv7 :

    @CE_SDK = mySDK # replace with actual SDK name
    CE_ARCH = armv7

    DEFINES += QT_NO_CLIPBOARD QT_NO_ACCESSIBILITY QT_NO_NATIVE_GESTURES QT_NOSTANDARDSHELL_UI_MODEL _CRT_SECURE_NO_DEPRECATE _WIN32_WCE=0x700 $$CE_ARCH AMRV7 armv7 ARM

    QMAKE_CFLAGS += -QRarch7 -arch:VFPv3-D32 -QRfpe-
    QMAKE_CXXFLAGS = $$QMAKE_CFLAGS

    QMAKE_LFLAGS_CONSOLE = /SUBSYSTEM:WINDOWSCE,7.00 /MACHINE:THUMB /ENTRY:mainACRTStartup
    QMAKE_LFLAGS_WINDOWS = /SUBSYSTEM:WINDOWSCE,7.00 /MACHINE:THUMB
    QMAKE_LFLAGS_DLL = /SUBSYSTEM:WINDOWSCE,7.00 /MACHINE:THUMB /DLL /SAFESEH:NO
    QMAKE_LIBFLAGS_RELEASE = /LTCG
    QMAKE_LIBS = corelibc.lib coredll.lib
    QMAKE_LIBS_CORE = corelibc.lib ole32.lib oleaut32.lib uuid.lib commctrl.lib coredll.lib winsock.lib
    QMAKE_LIBS_GUI = ceshell.lib ole32.lib $$QMAKE_LIBS_CORE
    QMAKE_LIBS_NETWORK = ws2.lib $$QMAKE_LIBS_GUI
    QMAKE_LIBS_OPENGL =
    QMAKE_LIBS_COMPAT =
    QMAKE_LIBS_OPENVG = libopenvg.lib
    QMAKE_LIBS_OPENGL_ES2 = libEGL.lib libGLESv2.lib

    QMAKE_RC = rc

    QMAKE_COMPILER_DEFINES -= _MSC_VER=1400
    QMAKE_COMPILER_DEFINES += _MSC_VER=1500@

    Build process:
    @configure -xplatform wince70-myPlatform-msvc2008 -developer-build -opensource -confirm-license -nomake tests -nomake examples -no-accessibility -opengl es2 -skip qtactiveqt -skip qtwinextras -skip qtlocation@

    @jom@

    I used the skip directives and -no-accessibility due to build errors. Only with this additional directives I was able to build the libraries. But Quickcontrols werde not built. I found the following error in log file:

    @Creating library C:\QtCe\build2\qtbase\qml\QtNfc\declarative_nfc.lib and object C:\QtCe\build2\qtbase\qml\QtNfc\declarative_nfc.exp
    cd qtdoc\ && ( if not exist Makefile C:\QtCe\build2\qtbase\bin\qmake C:\QtCe\qt-everywhere-opensource-src-5.3.2\qtdoc\qtdoc.pro -o Makefile ) && C:\QtCe\qt-everywhere-opensource-src-5.3.2\gnuwin32\bin\jom.exe -f Makefile
    cd qtquickcontrols\ && ( if not exist Makefile C:\QtCe\build2\qtbase\bin\qmake C:\QtCe\qt-everywhere-opensource-src-5.3.2\qtquickcontrols\qtquickcontrols.pro -o Makefile ) && C:\QtCe\qt-everywhere-opensource-src-5.3.2\gnuwin32\bin\jom.exe -f Makefile
    cd qtsensors\ && ( if not exist Makefile C:\QtCe\build2\qtbase\bin\qmake C:\QtCe\qt-everywhere-opensource-src-5.3.2\qtsensors\qtsensors.pro -o Makefile ) && C:\QtCe\qt-everywhere-opensource-src-5.3.2\gnuwin32\bin\jom.exe -f Makefile
    cd qtenginio\ && ( if not exist Makefile C:\QtCe\build2\qtbase\bin\qmake C:\QtCe\qt-everywhere-opensource-src-5.3.2\qtenginio\qtenginio.pro -o Makefile ) && C:\QtCe\qt-everywhere-opensource-src-5.3.2\gnuwin32\bin\jom.exe -f Makefile
    cd qtwebsockets\ && ( if not exist Makefile C:\QtCe\build2\qtbase\bin\qmake C:\QtCe\qt-everywhere-opensource-src-5.3.2\qtwebsockets\qtwebsockets.pro -o Makefile ) && C:\QtCe\qt-everywhere-opensource-src-5.3.2\gnuwin32\bin\jom.exe -f Makefile
    cd qtgraphicaleffects\ && ( if not exist Makefile C:\QtCe\build2\qtbase\bin\qmake C:\QtCe\qt-everywhere-opensource-src-5.3.2\qtgraphicaleffects\qtgraphicaleffects.pro -o Makefile ) && C:\QtCe\qt-everywhere-opensource-src-5.3.2\gnuwin32\bin\jom.exe -f Makefile
    cd qtmultimedia\ && ( if not exist Makefile C:\QtCe\build2\qtbase\bin\qmake C:\QtCe\qt-everywhere-opensource-src-5.3.2\qtmultimedia\qtmultimedia.pro -o Makefile ) && C:\QtCe\qt-everywhere-opensource-src-5.3.2\gnuwin32\bin\jom.exe -f Makefile
    Info: creating cache file C:\QtCe\build2\qtquickcontrols.qmake.cache
    Info: creating cache file C:\QtCe\build2\qtwebsockets.qmake.cache
    Info: creating cache file C:\QtCe\build2\qtsensors.qmake.cache
    Info: creating cache file C:\QtCe\build2\qtenginio.qmake.cache
    "Some of the required modules (contains(QT_CONFIG, accessibility)) are not available."
    Info: creating cache file C:\QtCe\build2\qtmultimedia.qmake.cache
    "Skipped." @

    So applications that uses QuickControls do not work.
    But also applications that uses only QML (Qt examples - tutorials) do not work. Either no window opens or a window opens with no content. In both cases no error message.

    For testing purposes I copied all libs, platforms, plugins to my device. I checked my application with Dependency Walker and saw that libglesv2.dll and ws2.dll are missing. But OpenGL applications with widgets run without problems. Maybe the missing ws2.dll is a problem?

    Have anybody an idea why QuickControls are not built and why QML applications are not running?

    Thank you in advance.



  • I found the dlls in \windows folder after setting option "show hidden files" and "show protected files". But the issue still exists.


Log in to reply
 

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