Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

Build of Qt 5.4 for Windows Mobile 6 Professional fails - Qt5Cored_pch compilation error C2733



  • Hello, I am trying to build Qt5.4 for Windows Mobile 6 Professional development but I am getting a fatal compiler error when compiling Qt5Cored_pch.pch. Any help would be appreciated! ( Believe it or not, Windows Mobile 6 Professional is the OS used for new devices such as Motorola's handheld barcode / RFID scanning devices)

    Starting at the top, the command line for 'configure' I used is :
    configure -platform win32-msvc2008 -xplatform wince70embedded-armv4i-msvc2008

    Where I have modified the contents of the qmake.conf in the wince70embedded-armv4i-msvc2008 to be the following:

    include(../common/wince/qmake.conf)

    CE_SDK = Windows Mobile 6 Professional SDK
    CE_ARCH = armv4i

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

    QMAKE_LFLAGS_CONSOLE = /SUBSYSTEM:WINDOWSCE,6.00 /MACHINE:THUMB
    QMAKE_LFLAGS_WINDOWS = /SUBSYSTEM:WINDOWSCE,6.00 /MACHINE:THUMB
    QMAKE_LFLAGS_DLL = /SUBSYSTEM:WINDOWSCE,6.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

    The configuration step completes successfully, and when I execute nmake, many, many files compile until Qt5.4Cored_pch.pch, producing the following set of errors:

        cl -c -Yc -Fp.pch\debug\Qt5Cored_pch.pch -Fo.pch\debug\Qt5Cored_pch.obj -nologo -Zm200 -Zc:wchar_t- -DDEBUG -D_D
    

    EBUG -Zi -MDd -EHsc -W3 -w34100 -w34189 /Fd....\lib\Qt5Cored.pdb -DUNDER_CE -DWINCE -D_WINDOWS -D_UNICODE -DUNICODE -D_
    WIN32 -DQT_NO_PRINTER -DQT_NO_PRINTDIALOG -DQT_NO_CLIPBOARD -DQT_NO_ACCESSIBILITY -DQT_NO_NATIVE_GESTURES -DQT_NOSTANDAR
    DSHELL_UI_MODEL -D_CRT_SECURE_NO_DEPRECATE -D_WIN32_WCE=0x600 -Darmv4i -D_AMRV7_ -Darmv7 -D_ARM_ -DQT_NO_USING_NAMESPACE
    -DQT_BUILD_CORE_LIB -DQT_BUILDING_QT -D_CRT_SECURE_NO_WARNINGS -D_USE_MATH_DEFINES -DQT_ASCII_CAST_WARNINGS -DQT_MOC_CO
    MPAT -DQT_USE_QSTRINGBUILDER -DQT_DEPRECATED_WARNINGS -DQT_DISABLE_DEPRECATED_BEFORE=0x040800 -DNO_ERRNO_H -DPCRE_HAVE_C
    ONFIG_H -DPCRE_STATIC -DQT_NO_ICONV -DQT_CORE_LIB -DQT_NO_DYNAMIC_CAST -I"....\include" -I"....\include\QtCore" -I"..
    ..\include\QtCore\5.4.0" -I"....\include\QtCore\5.4.0\QtCore" -I"tmp" -I"global" -I"..\3rdparty\zlib" -I"..\3rdparty\pc
    re" -I"..\3rdparty\harfbuzz\src" -I"..\3rdparty\md5" -I"..\3rdparty\md4" -I"..\3rdparty\sha3" -I".moc\debug" -I"....\mk
    specs\wince70embedded-armv4i-msvc2008" -TP global\qt_pch.h
    qt_pch.h
    C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\ce\include\altcecrt.h(363) : error C2733: second C linkage of over
    loaded function 'wcsftime' not allowed
    C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\ce\include\altcecrt.h(363) : see declaration of 'wcsftime'

    C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\ce\include\altcecrt.h(391) : error C3861: 'memcpy_s': identifier n
    ot found
    C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\ce\include\altcecrt.h(396) : error C3861: 'memmove_s': identifier
    not found
    C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\ce\include\iosfwd(584) : error C2039: 'memcpy_s' : is not a member
    of 'global namespace'' C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\ce\include\iosfwd(584) : error C3861: 'memcpy_s': identifier not f ound C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\ce\include\iosfwd(608) : error C2039: 'memmove_s' : is not a membe r of 'global namespace''
    C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\ce\include\iosfwd(608) : error C3861: 'memmove_s': identifier not
    found
    NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\ce\bin\x86_arm\cl.EXE"' : return cod
    e '0x2'
    Stop.
    NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\BIN\nmake.exe"' : return code '0x2'
    Stop.
    NMAKE : fatal error U1077: 'cd' : return code '0x2'
    Stop.
    NMAKE : fatal error U1077: 'cd' : return code '0x2'
    Stop.
    NMAKE : fatal error U1077: 'cd' : return code '0x2'
    Stop.



  • Hi mdoser

    when I successfully compiled Qt.5.4 for WEC7 under Win7 with VS2008 platform builder, I used the following command:
    configure.exe -platform win32-msvc2008 -xplatform wince70embedded-armv4i-msvc2008 -developer-build -qt-style-fusion -opensource -nomake examples -nomake tests -rtti -qt-crt -opengl es2 -no-accessibility -confirm-license

    Maybe this info can help you. I built it for the beagleboard xm and against the suiteable SDK.
    Cheers J


Log in to reply