Qt Migration Framework

Verschiedenes zu Qt
jona
Beiträge: 37
Registriert: 16. Februar 2005 11:22

Qt Migration Framework

Beitrag von jona »

Hallo!

Ich habe mir das Qt Migration Framework installiert.
Ich muss eine Applikation von MFC nach Qt portieren.
Ich arbeite mit der Qt VS Integration Version.
Jetzt wollte ich erstmal den Walkthrough von Trolltech durcharbeiten, aber sobald ich Header-Dateien (#include <qmfcapp.h>) des Migration Framework einbinde, bekomme ich einen Linker-Fehler:

1>Linking...
1>qtmfc.obj : error LNK2019: unresolved external symbol "public: static int __cdecl QMfcApp::run(class CWinApp *)" (?run@QMfcApp@@SAHPAVCWinApp@@@Z) referenced in function "public: virtual int __thiscall WindowsApp::Run(void)" (?Run@WindowsApp@@UAEHXZ)
1>.\Debug/QtMfc.exe : fatal error LNK1120: 1 unresolved externals

Kennt das jemand?
Die "Additional Include Directories" sind meiner Meinung nach richtig gesetzt.

Besten Dank im Voraus.
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

Wohl nicht gegen die Qt-MFC libs gelinkt.
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
AuE
Beiträge: 918
Registriert: 5. August 2008 10:58

Beitrag von AuE »

Was steht denn unter Projekteigenschaften -> Linker -> Allgemein ==> Zusätzliche Bibliotheksverzeichnisse bzw. hast du in unter eingabe die libs mitgegeben?

Zusätzliche Libs steht bei mir folgendes: (debug)

"$(QTDIR)\lib" ...

und unter eingabe:

qtmaind.lib QtCored4.lib QtGuid4.lib QtSqld4.lib

um ein bsp zu nennen.... weiß ja nicht wo deine lib drin steckt. auf jeden fall findet er sie ja nicht ;-)
jona
Beiträge: 37
Registriert: 16. Februar 2005 11:22

Beitrag von jona »

Stimmt, es wird wohl daran liegen, dass die lib fehlt.
Habe jetzt erstmal die den Pfad zu Qt\lib angegeben.

@Christian81:
Wo finde ich denn die Qt-Mfc libs?
Ich habe das Paket heruntergeladen und entpackt, aber ich finde dort keine lib-Dateien...

Danke schon mal!!
AuE
Beiträge: 918
Registriert: 5. August 2008 10:58

Beitrag von AuE »

dann musst sie wohl noch bauen?! was sagt denn deine anleitung/beschreibung (Walkthrough)?

Sie sagt das hier:


Prerequisites
Before we can start using the Windows Migration framework, we must build the framework library, and build and link the MFC project with the Qt toolkit and the Windows Migration framework library.
und ne zeile tiefer steht wie....
jona
Beiträge: 37
Registriert: 16. Februar 2005 11:22

Beitrag von jona »

Ja, klar, die Anleitung hab ich schon gelesen.
Aber ich hab kein configure...

Da kommt die Fehlermeldung:
'configure' is not recognized as an internal or external command, operable program or batch file.

Ich hab den Aufruf im Ordner von qtwinmigrate gemacht.

Sorry, irgendwie steh ich wohl auf den Schlauch...
AuE
Beiträge: 918
Registriert: 5. August 2008 10:58

Beitrag von AuE »

was hast denn für dateien in dem ordner? s
Change into the src directory and run the make tool (nmake for VC++, make for Borland) to build the library. The library qtwinmigrate.lib will be linked into QTDIR/lib.
das ist aber dann auch der grund warum alles weitere scheitert. ohne gebaute libs kann er net drauf zu greifen also unaufgelöste ext. verweise
jona
Beiträge: 37
Registriert: 16. Februar 2005 11:22

Beitrag von jona »

Jaja, hab mir schon gedacht, dass das Problem hier liegt...
Aber eben, komme mit der Anleitung nicht wirklich weiter?!

Also, von hier hab ich die .zip (neueste Version 2.7)Datei heruntergeladen:
http://trolltech.com/products/appdev/ad ... inmigrate/

Und in dem Ordner sind diese Dateien:
siehe
Ordner winmigrate.png
und dann noch src.png[/img]
Dateianhänge
qtwinmigrate.png
qtwinmigrate.png (4.66 KiB) 7751 mal betrachtet
src.png
src.png (5.57 KiB) 7751 mal betrachtet
jona
Beiträge: 37
Registriert: 16. Februar 2005 11:22

Beitrag von jona »

Also, bin jetzt schon einen Schritt weiter.
Die Anleitung ist wohl etwas veraltet...
Neu, wird jetzt die .pri Datei in die .pro Datei eingebunden.
Dazu muss aber zuerst aus dem .vcproj eine .pro Datei erstellt werden und zwar mit dem Befehl:
qmake -project -t vcapp

Dann kann die .pri Datei über Qt VS Integration eingebunden werden.

Hab aber immer noch den Fehler:
qtmfc.obj : error LNK2019: unresolved external symbol

Ach...!
AuE
Beiträge: 918
Registriert: 5. August 2008 10:58

Beitrag von AuE »

hast du ein Qt (normales Qt installiert?) und wenn ja sind die variablen für die libs gesetzt?

hast du jetzt die lib erstellt?
jona
Beiträge: 37
Registriert: 16. Februar 2005 11:22

Beitrag von jona »

Ich habe Qt commercial 4.4.1 installiert.
Und die Variablen zu den Qt libs sind gesetzt.

Nein, die migration framework lib kann ich nicht erstellen...
AuE
Beiträge: 918
Registriert: 5. August 2008 10:58

Beitrag von AuE »

geh mal in die commandozeile. wechsele in den src ordner. tipp da ein nmake und berichte ;-)
jona
Beiträge: 37
Registriert: 16. Februar 2005 11:22

Beitrag von jona »

Danke für deine Geduld :)

'nmake' is not recognized as an internal or external command, operable program or batch file.
AuE
Beiträge: 918
Registriert: 5. August 2008 10:58

Beitrag von AuE »

die datei nmake ist aber vorhanden?

umgebungsvariablen gesetzt?
jona
Beiträge: 37
Registriert: 16. Februar 2005 11:22

Beitrag von jona »

Sorry, Umgebungsvariable fehlte...

Jetzt fehlt aber noch das makefile!
Antworten