Beim QTCreator bei Windows alle benötigten .dll Dateien zum Projekt dazulinken
-
Hallo allerseits
Habe mit QT angefangen und habe bereits etwas Erfahrung im Umgang mit dem QTCreator gesammelt. Die Ausführung QTCreator funktioniert auch einwandfrei aber wenn ich die exe von Hand starten will, müssen folgende dll dateien dem Programm zur Verfügung stehen.
mingwm10.dll
libgcc_s_dw2-1.dll
QtCored4.dll
QtGuid4.dllDa diese nicht standartmäßig bei Windows vorhanden sind und ich auch wegen der Benutzerfreundlichkeit und Portabilität gerne nur die EXE haben möchte hoffe ich wie mir einer sagen kann ob und wie man diese dll Dateien im Projekt mit aufnehmen kann.
Mit freundlichen Grüßen
Andre
-
Dazu musst du die QT-Lib in einer statischen Variante erstellen. Ich handhabe das so.
Aktuellen Source holen.git clone -b 4.7 git://gitorious.org/qt/qt.git c:\qt\qt-source
Dann konfigurieren
set QTDIR=c:\qt\4.7-static mkdir %QTDIR% cd %QTDIR% path %QTDIR%\bin;%PATH% c:\qt\qt-source\configure -static -release -no-qt3support -no-...
Beim
configure
nur das nötigste einbinden. Sieheconfigure -help
Eine Debug-Variante macht keinen Sinn.
Und dann die Lib erstellen.nmake oder mingw32-make
-
Ich hab das auch mal probiert und nach langem Versuchen habe ich eine Version die dynamisch für die Debug-Version linkt und eine, die statisch den Release linkt:
-Qt SDK installieren
-Qt Standalone(reines Qt) in anderen Ordner installieren über genau! die MingW-Version aus dem SDK
-Umgebungsvariable PATH mit \mingw\bin des SDK erweitern
-Qt Standalone\mkspecs\win32-g++\qmake.conf erweitern mit:
QMAKE_LFLAGS = -static -static-libgcc -enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-enable-runtime-pseudo-reloc
QMAKE_CFLAGS_RELEASE = -Os -momit-leaf-frame-pointer
-ins Qt Standalone-Verzeichnis wechseln:
configure -platform win32-g++ -static -release -nomake examples -nomake demos -no-qt3support -no-scripttools -no-phonon -no-style-motif -no-style-cde -no-style-cleanlooks -no-style-plastique -no-sql-sqlite -qt-libjpeg -qt-zlib -qt-libpng
mingw32-make
bzw. mingw32-make sub-src
mingw32-make sub-toolsProjektdatei einfügen:
CONFIG += static
static {CONFIG += static
DEFINES += STATIC
message("Static build.")
}