前言
最近需要使用qt压缩解压一些文件,由于qt自带库的一些局限性,现在使用quazip第三方库来进行压缩解压,也查找了很多资料,下面是一些总结和遇到的一些问题
一、编译zlib库
过程如下:
- 下载zlib库:地址:http://www.zlib.net/;
- 点击vs 工具中的Visio Studio命令提示符,切换到目录zlib中contrib 目录下masmx86下,运行bld_ml32.bat,该步骤目的是生成inffas32.obj和match686.obj
- 在zlib根目录下运行nmake -f win32/Makefile.msc LOC="-DASMV -DASMINF" OBJA=“contrib/masmx86/inffas32.obj contrib/masmx86/match686.obj”.
至此,zlib库处理完成。
二、quazip编译
- 下载quazip库:地址:https://jaist.dl.sourceforge.net/project/quazip/quazip/0.7.3/quazip-0.7.3.zip
- 在quazip目录下创建文件夹include和文件夹lib。
- 将zlib.h和zconf.h放到include中, 把zdll.lib放到lib中。
- 修改quazip.pro, 添加头文件路径和动态库路径,如下
INCLUDEPATH +=
P
W
D
/
i
n
c
l
u
d
e
L
I
B
S
+
=
−
L
PWD/include LIBS += -L
PWD/includeLIBS+=−LPWD/lib -lzdll
- 进行qmake和构建生成release和debug版本(自己切换)
最后使用方式
将所有.h(zlib和quazip的)放入include,将zdll.lib和quazipd.lib(debug版本),quazip.lib(release版本)放入lib,将dll放入exe目录,最后在工程配置里加入对应的引用目录即可。
JlCompress::extractDir(s1, s2);//解压
JlCompress::compressDir(s1, s2);//压缩
另附打包好的quazipx86版本(包含release和dubug)地址:https://download.csdn.net/download/qq_40529346/16497524