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:
- i downloaded qt-everywhere-opensource-src-4.6.3
- extracted c:\qt\qt-everywhere-opensource-src-4.6.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
- the configure step finished successfully.
- 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.
- download , install qt sdk open source c++ windows http://qt.nokia.com/downloads/sdk-windows-cpp
- install visual studio.
- install visual studio sp1.
- install .net compact framework.
- if os xp or earlier, install microsoft active sync.
- if os vista or later, install windows mobile device center.
- install windows mobile 6 sdk.
- download , extract qt c++ wince sdk (eg. c:\qt\qtwince).
- download , install qt c++ windows visual studio (eg. c:\qt\qtvs2008).
- install qt visual studio add-in inside qt wince folder , qt c++ windows visual studio folder.
- 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%;
- configure.
- setcepaths wincewm60professional-msvc2008
- nmake
Comments
Post a Comment