2009-05-27 6 views
2

Ich versuche, Qt 4.5.1 unter Windows XP Targeting Wince50 zu kompilieren.Wie kompiliere ich Qt 4.5.1 unter Windows XP für WinCE?

Ich habe die Voraussetzungen installiert (VS2008, WinCE50SDK, ActivePerl 5.10) und habe die qt-embedded-wince-opensource-src-4.5.1.zip heruntergeladen, die in c: \ Qt \ 4.5.1 und installiert wurde c: \ Qt \ 4.5.1 \ bin wurde dem Pfad hinzugefügt.

Von einer VS-Eingabeaufforderung, steuere ich C: \ Qt \ 4.5.1 und führen Sie die folgenden Schritte aus:

configure -platform win32-msvc2008 -xplatform wince50standard-armv4i-msvc2008 -qt-gif -qt-libjpeg -qt-libpng -webkit -openssl -arch windowsce -opensource -iwmmxt 

und ich erhalte den folgenden Fehler:

c:\qt\4.5.1\include\qtcore\../../src/corelib/tools/qvector.h(758) : fatal error C1083: Cannot open include file: 'QtCore/QPointF': No such file or directory 
NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio 9.0\VC\BIN\cl.EXE"' : return code '0x2' 
Stop. 

Ich habe versuchte dies mit früheren Versionen von Qt, bis herunter zu 4.4.3 und auf zwei verschiedenen XP-Maschinen (eine mit einem sauberen Build) und mit verschiedenen Konfigurationsoptionen. Jedes Mal bekomme ich den gleichen Fehler.

Was fehlt mir?

UPDATE:
OK, habe ich ein wenig weiter bekam, obwohl es wahrscheinlich eine Sackgasse ist.

Wenn ich qt-all-Open-Source-src-4.5.1 als Basis verwenden, dann konfigurieren führen Sie es Qmake aufzubauen gelingt, doch irgendwie dann zusammenzucken Dateien auf fehlt. Also nehme ich dann die src und schließe Ordner von qt-embedded-wince-opensource-src-4.5.1 ein und kopiere sie über den obersten der qt-all-Ordner, dann wird die Konfiguration erfolgreich abgeschlossen.

Aber dann schlägt fehl nmake mit dem folgenden Fehler:

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\BIN\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. 

Die Tatsache, dass mit diesem Ansatz für mich gearbeitet konfigurieren bedeutet, dass die qt-embedded-WinCE-Open-Source-src-4.5.1-Release fehlt Inhalt hat .

Irgendwelche Vorschläge, was dies zu versuchen, neben bekommen würde sehr willkommen zu kompilieren sein.

Antwort

1

Haben Sie die Umgebungsvariablen korrekt eingerichtet? I.e. Es ist oft schön, eine .bat mit den entsprechenden INCLUDE- und LIB-Definitionen zu haben. Wenn Sie Qt installiert haben, ist eine Qt-Befehlsshell installiert, die als nette Vorlage dienen kann und Ihnen eine Eingabeaufforderung mit den richtigen Umgebungsvariablen zur Verfügung stellt, je nachdem, welche Qt-Version Sie verwenden möchten.

+0

Ich habe die Anweisungen genau wie auf der hier angegebenen: http://doc.qtsoftware.com/4.5/install-wince.html Schritt 4 (make) ist die Qt-Umgebungsvariablen einrichten und ich kann ' t Überschreiten Sie Schritt 3 (konfigurieren). Auch wenn ich die Umgebungsvariablen aus Schritt 4 vor dem Ausführen von konfigurieren, bekomme ich immer noch den gleichen Fehler. Ich bin mir sicher, dass es entweder einige fehlende Dateien in der src-Version oder einen fehlenden undokumentierten Schritt geben muss. Ich habe sogar eine neue Maschine heute mit VS2005 erstellt, um sicherzustellen, dass es nicht VS2008 verursacht das Problem, aber ich habe immer noch den gleichen Fehler. –

0

Also habe ich - stellen Sie sicher, das WinCE-Paket heruntergeladen und NICHT der Windows-Installer, da diese nicht über Unterstützung für WinCE.

0

qt-embedded-wince-opensource-src-4.5.1.zip scheint keine Dateien zu fehlen, es enthält include\QtCore\QPointF wie es sollte. Ich habe dieses Quellpaket getestet und kann es gut konfigurieren.

Ist die Datei c:\Qt\4.5.1\include\QtCore\QPointF existieren, nachdem Sie das Quellcode-Paket extrahieren?

ich an Strohhalme hier greifen kann, aber: welches Programm haben Sie verwenden, um die Quellen zu entpacken? Der Dateiname in Ihrer Fehlermeldung wird in Kleinbuchstaben angezeigt, hat Ihr Programm entpackt alle Dateien in Kleinbuchstaben? Verwenden Sie ein Dateisystem, bei dem die Groß-/Kleinschreibung beachtet wird? (Ich weiß nicht, ob das überhaupt unter Windows möglich ist ...) Das ist vielleicht ein Ablenkungsmanöver, denn ich weiß, dass cl.exe Dateinamen in Fehlermeldungen beliebig klein schreibt.

Wenn das nicht hilft, bitte posten Sie etwas mehr von dem Fehler, so können wir sagen, was gerade kompiliert und welche Argumente an cl.exe übergeben wurden.