qt 集成 quazip mac windows
quazip是qt封装的zlib库。可以跨平台使用。但是不同平台可能编译以及使用方式略有差别。本文讲述在mac和windows上如何编译并使用quazip。
下载源码: git
windows上:
使用qtcreator打开,目录结构如下图
在quazip.pro 中添加一行路径包含
INCLUDEPATH+=C:QtQt5.12.45.12.4Srcqtbasesrc3rdpartyzlibsrc
如下图,修改第一行
作用是使用qt自带的zlib源码。因为quazip依赖zlib库,刚好qt中就有。也可以网上下载zlib编译好的dll,lib头文件导入,此处不再赘述。
qztest.pro中最好也要添加,以上路径包含,这样可以使用qztest测试一下。另外有人说可以去掉qztest.pro。我去掉后没有生成dll和lib,于是又加上了。
选择分别debug 和release进行编译,在构建目录中就有Qt5Quazipd1.dll和Qt5Quazipd1.lib。
拷贝出来分别放到你自己工程对应目录,并在工程中包含该目录。
另外要把quazip中的头文件拷贝出来放到你的工程。文件如下:
还有要把 C:QtQt5.12.45.12.4Srcqtbasesrc3rdpartyzlibsrc 这个目录中的头文件拷贝出来放到你的工程中,因为这是quazip所依赖的头文件。目录如下
mac上:
方法与windows上有些差别。我没有尝试使用qt中的zlib源码。而是直接使用终端安装zlib。 首先mac上可以直接安装zlib库,安装方法:
brew install zlib。
如果提示找不到brew,则要安装homebrew。具体安装方式以及可能有哪些坑在我的另外一篇博客中有写:
链接如下:
https://blog..net/justformemory/article/details/107379819
此处不再赘述。
同样下载源码。源码上文中有链接。
使用qtcreator打开,在quazip.pro中添加如下文字
macx {
LIBS += -lz
}
目的是包含zlib库。
选择release编译,在构建目录会产生四个文件
将这上面四个文件拷贝到你工程对应的目录,然后导入你的工程。
将quazip中的头文件拷贝到你的工程,在你工程中包含这些头文件,目录结构如下:
编译即可。
使用方法很简单,windows和mac用法一样。
包含JLcompress头文件,直接调用它的静态函数即可实现压缩和解压。
使用时注意一点如果压缩目录A,那么不要将压缩产生的文件B.zip放到A中。因为会产生死循环。导致压缩一直卡住没有返回。
