c++ - How to compile Qt 4.6.3 for Windows Mobile (Windows CE) under Windows? -


lnk1112: module machine type ' x86' conflicts target machine type 'thumb' 

i'm trying build qt windows ce/windows mobile , i'm following guide: http://doc.qt.io/archives/4.6/install-wince.html

these steps took far:

  1. i downloaded qt-everywhere-opensource-src-4.6.3
  2. extracted c:\qt\qt-everywhere-opensource-src-4.6.3
  3. opened visual studio command prompt , ran following command configure -platform win32-msvc2008 -xplatform wincewm60professional-msvc2008 -webkit -openssl -arch windowsce -opensource -qt-gif -qt-libjpeg -qt-libpng
  4. the configure step finished successfully.
  5. i try setcepaths wincewm60professional-msvc2008 , following error

could not find specified sdk: windows mobile 6 professional sdk (armv4i)

'tmp_created_script_setup.bat' not recognized internal or external command, operable program or batch file.

could not find c:\qt\qt-everywhere-opensource-src-4.6.3\tmp_created_script_setup .bat

windows mobile 6 professional selected, environment set up

this problem if type in checksdk -list output

available sdks: sdk name: pocket pc 2003 (armv4) sdk name: smartphone 2003 (armv4) 

for reason, windows mobile professional 6.5 sdk not detected, though can create, build , run windows mobile professional 6.5 applications visual studio 2008.

nevertheless, setcepaths command supposed set environment variables override default visual studio include paths , include windows mobile counterparts, went ahead, following guide , set them myself to

set include=c:\program files\microsoft visual studio 9.0\vc\ce\include;c:\program files\windows mobile 6 sdk\pocketpc\include\armv4i set lib=c:\program files\microsoft visual studio 9.0\vc\ce\lib\armv4i;c:\program files\windows mobile 6 sdk\pocketpc\lib\armv4i set path=c:\program files\microsoft visual studio 9.0\vc\ce\bin\x86_arm;%path% 

with in place, try running nmake , i'm struck error

c:\qt\qt-everywhere-opensource-src-4.6.3>nmake  microsoft (r) program maintenance utility version 9.00.30729.01 copyright (c) microsoft corporation.  rights reserved.          cd src\winmain\ && "c:\program files\microsoft visual studio 9.0\vc\bin\ nmake.exe" -f makefile  microsoft (r) program maintenance utility version 9.00.30729.01 copyright (c) microsoft corporation.  rights reserved.          "c:\program files\microsoft visual studio 9.0\vc\bin\nmake.exe" -f makef ile.debug  microsoft (r) program maintenance utility version 9.00.30729.01 copyright (c) microsoft corporation.  rights reserved.          lib /subsystem:windowsce,5.02 /machine:thumb /out:..\..\lib\qtmaind.lib @c:\users\ahmed~1.sab\appdata\local\temp\nm6312.tmp microsoft (r) library manager version 9.00.21022.08 copyright (c) microsoft corporation.  rights reserved.  tmp\obj\debug_shared\qtmain_win.obj tmp\obj\debug_shared\qtmain_win.obj : fatal error lnk1112: module machine type ' x86' conflicts target machine type 'thumb' nmake : fatal error u1077: '"c:\program files\microsoft visual studio 9.0\vc\ce\ bin\x86_arm\lib.exe"' : return code '0x458' stop. nmake : fatal error u1077: '"c:\program files\microsoft visual studio 9.0\vc\bin \nmake.exe"' : return code '0x2' stop. nmake : fatal error u1077: 'cd' : return code '0x2' stop. 

  1. download , install qt sdk open source c++ windows http://qt.nokia.com/downloads/sdk-windows-cpp
  2. install visual studio.
  3. install visual studio sp1.
  4. install .net compact framework.
  5. if os xp or earlier, install microsoft active sync.
  6. if os vista or later, install windows mobile device center.
  7. install windows mobile 6 sdk.
  8. download , extract qt c++ wince sdk (eg. c:\qt\qtwince).
  9. download , install qt c++ windows visual studio (eg. c:\qt\qtvs2008).
  10. install qt visual studio add-in inside qt wince folder , qt c++ windows visual studio folder.
  11. change system environment variables:
    • set include=c:\program files (x86)\microsoft visual studio 9.0\vc\ce\include;c:\program files (x86)\windows mobile 6 sdk\pocketpc\include\armv4i;
    • set lib=c:\program files (x86)\microsoft visual studio 9.0\vc\ce\lib\armv4i;c:\program files (x86)\windows mobile 6 sdk\pocketpc\lib\armv4i;
    • set qtdir=c:\qt\qtwince;c:\qt\qtvs2008;c:\qt\2010.02.1;c:\qt\2010.02.1\qt;
    • set path=c:\program files (x86)\microsoft visual studio 9.0\vc\ce\bin\x86_arm;%path%;
  12. configure.
  13. setcepaths wincewm60professional-msvc2008
  14. nmake

Comments

Popular posts from this blog

c++ - How do I get a multi line tooltip in MFC -

asp.net - In javascript how to find the height and width -

c# - DataTable to EnumerableRowCollection -