[gelöst] Zip mit zlib und quzip in QT
[gelöst] Zip mit zlib und quzip in QT
Hi ich habe vor für meine Anwendung den Projektordner mit Unterordnern und Dateien vom Benutzer sichern und wiederherstellen zu lassen. Hierbei habe ich an quzip gedacht.
FRAGE: Gibt es noch eine echte QT Lösung oder nur die zusatz Installation von *.h und *.dll´s für die oben genannte Lösung?
FRAGE: Gibt es noch eine echte QT Lösung oder nur die zusatz Installation von *.h und *.dll´s für die oben genannte Lösung?
Zuletzt geändert von 24dan am 22. Juli 2011 13:53, insgesamt 1-mal geändert.
"Der erste Trunk aus dem Becher der Naturwissenschaften macht atheistisch, aber auf dem Grund des Bechers wartet Gott."
(W. Heisenberg)
(W. Heisenberg)
-
- Beiträge: 149
- Registriert: 1. April 2009 19:25
quazip
Du meinst sicher QuaZip.
Qt hat auch eine eingebaute qCompress( ) Funktion, die benutzt aber kein Standardformat. Du müsstes die Dateien einlesen, mit qCompress komprimieren und irgendwie strukturiert in eine Datei dann ausgeben.
zlib ist im Qt-SDK ja auch mit bei (qt/src/3rdparty/zlib) und wird wohl in die QtCore4.dll eingebunden.
QuaZip halte ich derzeit für die beste Lösung und die kleine DLL mitliefern ist kein Problem (70 kB).
Qt hat auch eine eingebaute qCompress( ) Funktion, die benutzt aber kein Standardformat. Du müsstes die Dateien einlesen, mit qCompress komprimieren und irgendwie strukturiert in eine Datei dann ausgeben.
zlib ist im Qt-SDK ja auch mit bei (qt/src/3rdparty/zlib) und wird wohl in die QtCore4.dll eingebunden.
QuaZip halte ich derzeit für die beste Lösung und die kleine DLL mitliefern ist kein Problem (70 kB).
Re: Zip mit zlib und quazip in QT
Danke okay
quazip sollte dann meine Lösung werden!
FRAGE:
Für quazip brauche ich doch aber zlib????
quazip sollte dann meine Lösung werden!
FRAGE:
Für quazip brauche ich doch aber zlib????
- Requirements
Just zlib and Qt 4. Well, Qt 4 depends on zlib anyway.
"Der erste Trunk aus dem Becher der Naturwissenschaften macht atheistisch, aber auf dem Grund des Bechers wartet Gott."
(W. Heisenberg)
(W. Heisenberg)
Re: Zip mit zlib und quzip in QT
FRAGE:
Wie ist den fürs WIN System die "Installation" von Quazip?
1. Brauche ich für das Zip und unzip alle *.h und *.cpp unter dem quazip Ordner wie kann ich das einfach in meinem QT Install Ordner unter C: unterbringen?
2. Okay die *.dll muss ich wohl für WIN erst noch kompilieren lassen?
Wie ist den fürs WIN System die "Installation" von Quazip?
1. Brauche ich für das Zip und unzip alle *.h und *.cpp unter dem quazip Ordner wie kann ich das einfach in meinem QT Install Ordner unter C: unterbringen?
2. Okay die *.dll muss ich wohl für WIN erst noch kompilieren lassen?
"Der erste Trunk aus dem Becher der Naturwissenschaften macht atheistisch, aber auf dem Grund des Bechers wartet Gott."
(W. Heisenberg)
(W. Heisenberg)
-
- Beiträge: 149
- Registriert: 1. April 2009 19:25
Re: Zip mit zlib und quzip in QT
in die quazip.pro (die 2. im Unterverzeichnis "quazip") habe ich noch
INCLUDEPATH += C:/_deinQt-Ordner_/qt/src/3rdparty/zlib
hinzugefügt und dann quazip kompliert
In meinen Source-Ordner lege ich einen Unterordner "3rdparty" an, darin den Unterordner "quazip-0.3" und darein kopiere ich die erstellen Dateien "libquazip.a" und "quazip.dll".
In meiner eigenen .pro habe ich dann noch folgendes ergänzt:
die quazip.dll liefere ich dann mit meinem Programm aus (gleicher Ordner wie exe)
Update:
Damit "INCLUDEPATH += ../quazip-0.3/quazip" funktioniert müssen die quazip-sourcen natürlich von deinem .pro-File aus ein Verzeichnis zurück, im Ordner "quazip-0.3" sein
INCLUDEPATH += C:/_deinQt-Ordner_/qt/src/3rdparty/zlib
hinzugefügt und dann quazip kompliert
In meinen Source-Ordner lege ich einen Unterordner "3rdparty" an, darin den Unterordner "quazip-0.3" und darein kopiere ich die erstellen Dateien "libquazip.a" und "quazip.dll".
In meiner eigenen .pro habe ich dann noch folgendes ergänzt:
Code: Alles auswählen
INCLUDEPATH += ../quazip-0.3/quazip \
C:/_deinQt-Ordner_/qt/src/3rdparty/zlib
LIBS += -L./3rdparty/quazip-0.3 \
-lquazip
Update:
Damit "INCLUDEPATH += ../quazip-0.3/quazip" funktioniert müssen die quazip-sourcen natürlich von deinem .pro-File aus ein Verzeichnis zurück, im Ordner "quazip-0.3" sein
Re: Zip mit zlib und quazip in QT
okay habe meine quazip.pro aus dem 2. Unterordner jetzt wie folgt abgeändert...
Fehlermeldung beim Kompilieren:
Code: Alles auswählen
TEMPLATE = lib
CONFIG += qt warn_on
QT -= gui
DEPENDPATH += .
INCLUDEPATH += . \
C:/Programme/QT/qt/src/3rdparty/zlib
# Input
HEADERS += *.h
SOURCES += *.c *.cpp
unix {
headers.path=$$PREFIX/include/quazip
headers.files=$$HEADERS
target.path=$$PREFIX/lib
INSTALLS += headers target
OBJECTS_DIR=.obj
MOC_DIR=.moc
LIBS += -lz
}
win32 {
headers.path=$$PREFIX/include/quazip
headers.files=$$HEADERS
target.path=$$PREFIX/lib
INSTALLS += headers target
LIBS += -lzlib
*-msvc*: QMAKE_LFLAGS += /IMPLIB:$$DESTDIR\\quazip.lib
}
DEFINES += QUAZIP_BUILD
Code: Alles auswählen
mingw32-make: Leaving directory `C:/Dokumente und Einstellungen/Video/Eigene Dateien/Downloads/quazip-0.4.1/quazip-0.4.1/quazip'
c:/programme/qt/mingw/bin/../lib/gcc/mingw32/4.4.0/../../../../mingw32/bin/ld.exe: cannot find -lzlib
collect2: ld returned 1 exit status
mingw32-make[1]: *** [debug\quazip.dll] Error 1
mingw32-make: *** [debug] Error 2
Beendet mit Rückgabewert 2.
Fehler beim Erstellen des Projekts Desktop
Beim Ausführen des Build-Schritts 'Make'
"Der erste Trunk aus dem Becher der Naturwissenschaften macht atheistisch, aber auf dem Grund des Bechers wartet Gott."
(W. Heisenberg)
(W. Heisenberg)
-
- Beiträge: 7319
- Registriert: 26. August 2004 14:11
- Wohnort: Bremen
- Kontaktdaten:
Re: Zip mit zlib und quzip in QT
Der Linker muss schon wissen wo er die zlib-library finden kann.
Siehe http://doc.trolltech.com/4.7/qmake-vari ... .html#libs
Siehe http://doc.trolltech.com/4.7/qmake-vari ... .html#libs
MfG Christian
'Funktioniert nicht' ist keine Fehlerbeschreibung
'Funktioniert nicht' ist keine Fehlerbeschreibung
Re: Zip mit zlib und quzip in QT
Jetzt hats geklappt:softwaremaker hat geschrieben:in die quazip.pro (die 2. im Unterverzeichnis "quazip") habe ich noch
INCLUDEPATH += C:/_deinQt-Ordner_/qt/src/3rdparty/zlib
hinzugefügt und dann quazip kompliert
Musste noch in das *.pro File mit dem schon eingetragenen INCLUDEPATH die
Code: Alles auswählen
LIBS += C:/_deinQt-Ordner_/qt/lib/libzdll.a
@Christian81: vielen Dank für deinen Verweis, der hat geholfen...
"Der erste Trunk aus dem Becher der Naturwissenschaften macht atheistisch, aber auf dem Grund des Bechers wartet Gott."
(W. Heisenberg)
(W. Heisenberg)