Как скомпилировать Qt 4.6.3 для Windows Mobile (Windows CE) под Windows? - PullRequest
4 голосов
/ 26 июля 2010
LNK1112: module machine type ' X86' conflicts with target machine type 'THUMB'

Я пытаюсь собрать Qt для Windows CE / Windows Mobile и следую этому руководству: http://doc.qt.io/archives/4.6/install-wince.html

Вот шаги, которые я предпринял до сих пор:

  1. Я скачал qt -where-opensource-src-4.6.3
  2. Извлечено в C: \ Qt \ qt -where-opensource-src-4.6.3
  3. Открыл командную строку Visual Studio и запустил следующую команду configure -platform win32-msvc2008 -xplatform wincewm60professional-msvc2008 -webkit -openssl -arch windowsce -opensource -qt-gif -qt-libjpeg -qt-libpng
  4. Шаг настройки успешно завершен.
  5. Я пытаюсь setcepaths wincewm60professional-msvc2008 и получаю следующую ошибку

Не удалось найти указанный SDK: Windows Mobile 6 Professional SDK (ARMV4I)

'tmp_created_script_setup.bat' не распознается как внутренняя или внешняя команда, работающая программа или пакетный файл.

Не удалось найти C: \ Qt \ qt -where-opensource-src-4.6.3 \ tmp_created_script_setup .bat

Windows Mobile 6 Professional выбрана, среда настроена

Это, вероятно, моя проблема, как будто я набираю checksdk -list Я получаю этот вывод

Available SDKs:
SDK Name: Pocket PC 2003 (ARMV4)
SDK Name: Smartphone 2003 (ARMV4)

По какой-то причине Windows Mobile Professional 6.5 SDK не обнаружен, хотя я могу создавать, создавать и запускать приложения Windows Mobile Professional 6.5 из Visual Studio 2008.

Тем не менее команда setcepaths должнаустановив некоторые переменные среды, чтобы переопределить пути включения Visual Studio по умолчанию и включить их аналоги в Windows Mobile, поэтому я пошел дальше, следуя руководству, и сам установил для них

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%

После этого я попытаюсь запустить nmake а потом меня поразила эта ошибка

C:\Qt\qt-everywhere-opensource-src-4.6.3>nmake

Microsoft (R) Program Maintenance Utility Version 9.00.30729.01
Copyright (C) Microsoft Corporation.  All 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.  All rights reserved.

        "C:\Program Files\Microsoft Visual Studio 9.0\VC\BIN\nmake.exe" -f Makef
ile.Debug all

Microsoft (R) Program Maintenance Utility Version 9.00.30729.01
Copyright (C) Microsoft Corporation.  All 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.  All rights reserved.

tmp\obj\debug_shared\qtmain_win.obj
tmp\obj\debug_shared\qtmain_win.obj : fatal error LNK1112: module machine type '
X86' conflicts with 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.

Ответы [ 2 ]

0 голосов
/ 16 марта 2011

Для того, что вы сказали, у вас нет WM6 SDK.

SDK здесь .См. Требования Qt для Windows CE по ссылке Установка Qt для Windows CE .

  • Обратите внимание, что SDK 6.0 не является 6,5.
0 голосов
/ 08 марта 2011
  1. Загрузите и установите Qt SDK для Open Source C ++ для Windows http://qt.nokia.com/downloads/sdk-windows-cpp
  2. Установите Visual Studio.
  3. Установите Visual Studio SP1.
  4. Установить .Net Compact Framework.
  5. Если ОС XP или более ранняя, установите Microsoft Active Sync.
  6. Если ОС Vista или более поздняя, ​​установите Центр устройств Windows Mobile.
  7. Установить Windows Mobile 6 SDK.
  8. Загрузите и извлеките Qt C ++ WinCE SDK (например, C: \ Qt \ QtWinCE).
  9. Загрузите и установите Qt C ++ Windows для Visual Studio (например, C: \ Qt \ QtVS2008).
  10. Установите надстройку Qt Visual Studio в папке Qt WinCE и папке Qt C ++ Windows для Visual Studio.
  11. Изменить системные переменные среды:
    • 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. настроить.
  13. setcepaths wincewm60professional-msvc2008
  14. NMAKE
...