分享

Qt5.7关于Quazip的编译和使用

 昵称52164085 2018-06-07

最近做项目用到了Quazip文件压缩和解压这块,在源码的编译和使用上遇到了不少的坑,接下来将自己的使用方法分享出来,供大家参考。


使用的Qt的版本是qt-opensource-windows-x86-mingw530-5.7.0

Quazip是基于zlib库的,编译时需要导入zlib的头文件和库文件,有兴趣的同学可以自己去下载zlib源码编译,我这里提供一份已经编译好的方便大家。

Quazip源码下载地址:https:///projects/quazip

zlib资源下载地址:http://download.csdn.net/download/xiaolaoshu96/9955168

没有积分的可以去这个的网址下载:https://ctyunpan./fs/15205759-217381519


编译

将下载好的Quazip文件解压后复制到QTWorkspaces下,用Qt Creator打开quazip.pro。



打开quazip.pro文件,将SUBDIRS=quazip qztest这行代码最后的qztest删除。



打开quazip文件夹下的quazip.pro文件,在win32代码块下添加两行代码,将zlib的头文件和库文件包含进来(具体路径根据实际修改)

  1. INCLUDEPATH += C:/zlib/include  
  2. LIBS += -L C:/zlib/lib -lzdll  




将项目改为Release模式,执行qmake,然后在构建,至此编译结束。


应用

新建一个文件夹myquazip,此目录下在分别新建lib和include两个文件夹。将quazip工程下的所有头文件复制到include文件夹下。将release目录下生成的libquazip.a和quazip.dll文件复制到lib目录下。





接下来新建一个控制台程序,在项目的.pro文件中添加下面两行代码,导入相关的库文件和头文件(具体路径根据实际修改)

  1. INCLUDEPATH += C:/myquazip/include  
  2. LIBS += -LC:/myquazip/lib -lquazip -LC:/zlib -lzlib1  


在mian文件中添加如下代码,进行压缩测试

  1. #include <QCoreApplication>  
  2. #include "JlCompress.h"  
  3. #include <QDebug>  
  4. int main(int argc, char *argv[])  
  5. {  
  6.     QCoreApplication a(argc, argv);  
  7.     if(false==JlCompress::compressDir("D:\\test.zip","D:\\test"))  
  8.         qDebug()<<"compress failed";  
  9.     else  
  10.         qDebug()<<"compress successed";  
  11.     return a.exec();  
  12. }  


编译成功,运行后发现控制台下没有输出任何东西,程序也没有报错。之前在这里卡了很久,也没有找到问题的原因。后来研究发现,还需要将quazip.dll文件和zlib1.dll文件复制到程序的debug目录下。



再次运行程序,程序正常运行。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多