Cómo puedo agregar zlib a una instalación existente de Qt. Soy bastante nuevo en esto, así que por favor dame una descripción detallada! ¡Gracias por su ayuda con anticipación!cómo agregar zlib a una instalación de qt existente
Respuesta
zlib está contenido en las bibliotecas de Qt de núcleo. Si desea utilizar las funciones zlib en un programa Qt, solo debe incluir zlib.h, que está en src/3rdparty/zlib. Ver p. la implementación de QByteArray en src/corelib/tools.
Si desea utilizar quazip, simplemente agregue la biblioteca a su proyecto. Se basa en las bibliotecas de Qt. Tenga cuidado de construir la biblioteca de qyazip correcta que corresponda a su instalación de Qt.
Usted consigue la ruta correcta añadiendo la siguiente línea a su archivo de proyecto:
INCLUDEPATH += $$[QT_INSTALL_PREFIX]/src/3rdparty/zlib
Para QT5, véase el comentario de Thorbjørn: es suficiente utilizar #include <QtZlib/zlib.h>
.
Si desea usar zlib para compresión/descompresión, use qCompress/qUncompress.
en realidad no quiero agregarlo para que pueda usar qyazip para directorios de compresión, así que ... :( – defiant
Al menos algunas personas aquí quieren construir Quazip, que requiere zlib.
Así es como lo hice en Windows con quazip 0.4.3.
En primer lugar en el quazip.pro me cambió SUBDIRS para contener solamente:
SUBDIRS=quazip
Entonces descargado binarios zlib y fuente de: http://www.winimage.com/zLibDll/zlib125dll.zip [] binarios http://www.winimage.com/zLibDll/zlib125.zip [fuente]
ambos enlaces llegaron de http://zlib.net
Luego, en la subcarpeta quazip/quazip.pro agregué:
INCLUDEPATH += <path to zlib source>
en la sección win32 {} I comentado esta línea:
# *-msvc*: QMAKE_LFLAGS += /IMPLIB:$$DESTDIR\\quazip.lib
y he modificado la línea de LIBS a esto:
*-msvc*: LIBS += -lzlibwapi -L<path to zlib binaries>/dll32
también he modificado en zip.c y unzip.c la
#include "zlib.h"
para convertirse en:
#include <zlib.h>
Después de esto, configuro esto para liberar el modo y obtuve un DLL.
Luego, en el proyecto de utilizar esto, añade la siguiente configuración:
INCLUDEPATH += <quazip source path>
INCLUDEPATH += <zlib source path>
LIBS += -L<quazip source path>\quazip\release -lquazip
Y que construye y funciona, pero sólo en modo de lanzamiento para la aplicación de prueba. En el modo de depuración, recibo errores de aserción y falla.
La respuesta actual solo es válida para Qt4. Desde Qt5, el archivo de encabezado zlib se almacena en un directorio diferente.Usando la propiedad qmake QT_INSTALL_HEADERS
puede agregar a su archivo .pro:
INCLUDEPATH += $$[QT_INSTALL_HEADERS]/QtZlib
Esto funciona, por ejemplo, para construir quazip, si lo agrega a quazip.pro
La propiedad $$[QT_INSTALL_HEADERS]
apunta a QTDIR/qtbase/include/
dentro de la cual se encuentra QtZlib/zlib.h.
Sin cambiar el includepath, tiene que cambiar cada instrucción de inclusión a #include <QtZlib/zlib.h>
como ha comentado Thorbjørn.
- 1. ¿Cómo agregar AUTO_INCREMENT a una columna existente?
- 2. Agregar una identidad a una columna existente
- 3. cómo agregar una nueva columna a una hoja existente
- 4. ¿Cómo puedo agregar una columna a una tabla existente?
- 5. Qt error de instalación
- 6. ¿Cómo agregar un botón a una hoja de UIActionSheet existente?
- 7. Cómo agregar datos principales a una aplicación de utilidad existente
- 8. Agregar UINavigationController a UIViewController existente
- 9. ¿Cómo agregar altura a la altura existente?
- 10. Agregar un blog a una página web existente
- 11. Cómo agregar un proyecto existente a Geany
- 12. Instalación de OpenGL para Qt
- 13. ¿Cómo agregar un método a una clase existente en PHP?
- 14. ¿Cómo agregar un valor predeterminado a una columna ya existente?
- 15. ¿Cómo agregar un Clojure REPL a una aplicación .NET existente?
- 16. Objetivo C - ¿Cómo agregar un método a una clase existente?
- 17. ¿Cómo agrego el módulo 'timeoutable' de Devise a una instalación existente de Devise? - Carriles 3,1
- 18. Agregar datos principales a una aplicación de iPhone existente
- 19. Agregar filas a la sección UITableView existente
- 20. ¿Puedo agregar un div ya existente a otro div existente?
- 21. ¿Puedo agregar métodos de extensión a una clase estática existente?
- 22. Agregar una carpeta de código fuente existente a Git
- 23. Agregar un nuevo proyecto a una solución existente en TFS
- 24. Agregar pruebas unitarias a un proyecto existente
- 25. Agregar una columna entera a una tabla mysql existente basada en la columna existente
- 26. Agregar una nueva función a un paquete existente (estándar)
- 27. Agregar una acción a un controlador existente (Ruby on Rails)
- 28. Agregar un DataSet existente a Report .rdlc
- 29. Agregar texto a PDF existente usando Python
- 30. Cómo agregar compatibilidad con MFC al proyecto Win32 C++ existente?
Gracias por el consejo. Tengo el problema similar, y al agregar zlib dicho directorio a INCLUDEDIRS hace que la compilación vaya bien. etapa de enlace. Linker no sabe dónde buscar zlib para vincularse y yo tampoco. Por favor, ayuda. – Septagram
Para no tener que enlazar con zlib, las funciones zlib son parte de QtCore4.dll. – hmuelner
A partir de Qt 5 este directorio normalmente no está disponible. Afortunadamente, esa línea ya no es necesaria ya que zlib.h se puede incluir así: '#include' –