写点什么

Qt|编译 QuaZip 以及程序应用

  • 2022 年 10 月 08 日
    河北
  • 本文字数:1040 字

    阅读完需:约 3 分钟

Qt|编译QuaZip以及程序应用

最近打算做一个解压缩包的功能,发现 Qt 也可以实现,那么今天来讲解下如何在编译 QuaZip 库时遇到的那些问题以及坑,希望大家引以为戒,哈哈!

QuaZip 的开源地址:QuaZip开源地址

开发环境:win10 环境 VS2017+Qt5.14.2 x64

如果你的运行环境与我一致,那么请继续往下看吧,不是 VS2017 也没有关系,VS2015 以上都是可以支持滴~

下载的 QuaZip 的开源压缩包叫做:quazip-0.7.3,解压缩之后的内容,如下:

功能

第一步:双击打开"quazip.sln"

发现出现了这样的问题

紧接着,解决方案也出现错误了

没事,大家不要慌,我们只需要稍作修改就可以啦~

重新加载 quazip.pro

接下来我们只需要一路“确定”,就可以将解决方案加载上啦~

第二步:编译

如果大家此时直接编译 quazip 解决方案,发现会出现如下的问题

即使这样子也没有关系,我们这时需要借助一个叫做“everything”的搜索工具,如果没有直接从网上下载就可以了,这里不需要过多说明,借助这个工具,只需要搜索我们丢失的文件:"zlib.h"以及"zconf.h"


搜索对应的文件后,你会发现,居然有好多个地方存在这两个文件,此时,你需要匹配当前所应用的 QT 环境找寻匹配内容了。

在这里,我们如何知道该匹配哪个文件夹下的头文件呢?

最简单的方法就是,我们在使用 VS 编译程序时,在展示输出内容时的第一句话,就是我们头文件所处于的位置

就按照蓝色区域框出来的路径查询,肯定没有问题。并将查询的两个.h 文件拷贝到 quazip 文件夹下,并添加到项目中。


直接编译不会出现任何错误,完美!

编译完成的内容分别在以下两个文件夹中

第三步:新建项目使用解压功能

新建一个 Qt Widget 的项目,假设项目名称叫做:QtZipFiles

3.1:配置 quazip 的属性

配置头文件

配置 quazip 所需要用到的头文件路径,在这里需要注意的是,在新建项目中只需要在属性中配置就可以了,无需在项目中添加,否则会出现静态导出库的问题!


那么,对应的"include"中有哪些内容呢?

就是上述我所说到的,quazip 文件夹下所有的.h 以及.cpp 文件

配置静态库


debug 与 release 的配置方式一致。

3.2:dll 导出库位置

静待库配置完成后,下面需要放置两个 dll 了,此时,就需要将 dll 放到与你当前创建的项目 QtZipFiles 生成的 exe 相同的路径下

3.3:程序应用

以上属性配置成功之后,直接编译是不会出任何错误的,接下来就到了直接使用的环节了。

添加的头文件:

#include "JlCompress.h"
复制代码


解压缩使用

JlCompress::extractDir("F:\\1111.zip", "F:\\2222");
复制代码


压缩使用

JlCompress::compressDir("F:\\1111.zip", "F:\\2222");
复制代码


到这里 Qt 的压缩与解压缩功能就完成啦~


我是中国好公民 st,一名 C++开发程序猿~

用户头像

书山有路勤为径,学海无涯苦作舟 2022.07.01 加入

擅长语言:C++ 涉及语言:Python

评论

发布
暂无评论
Qt|编译QuaZip以及程序应用_c++_中国好公民st_InfoQ写作社区