只是QuaZip只提供源码,由此需要自己来编译

近年写个Qt
demo,想要使用压缩和解压四个文件的效应,并不应用额外进程。网上参考了众多素材,发现只有QuaZip相比吻合自己的需求。可是QuaZip只提供源码,由此需要团结来编译。

最近写个Qt
demo,想要使用压缩和解压六个公文的功用,并不采纳额外进程。网上参考了成百上千材料,发现只有QuaZip相比吻合我的需求。不过QuaZip只提供源码,因而需要协调来编译。

QuaZip简介

QuaZIP is a simple C++ wrapper over Gilles Vollant’s ZIP/UNZIP package
that can be used to access ZIP archives. It uses the Qt toolkit.

简单来说的话,QuaZip就是zlib(解压缩软件)的Qt封装类,在Qt开发环境中特别好用。

QuaZip简介

QuaZIP is a simple C++ wrapper over Gilles Vollant’s ZIP/UNZIP package
that can be used to access ZIP archives. It uses the Qt toolkit.

简易的话,QuaZip就是zlib(解压缩软件)的Qt封装类,在Qt开发环境中那些好用。

编译步骤

  1. 在VS中下载Qt插件(全名Qt Visual Studio
    Tools)并安装,安装后安排下插件使用的Qt版本。
  2. 在sourceforge官网下载QuaZip源码,并解压缩。
  3. 用插件打开QuaZip解压缩目录下quazip子目录中的quazip.pro工程文件(VS会提醒重新生成配置文件,接纳“是”)。
  4. 下载zlib的源代码,并解压缩。
  5. 在VS项目性质中添加解压后的zlib源文件,具体请百度。
  6. 重要来了,用VS打开zconf.h文件,并将:

    #if 1           /* HAVE_UNISTD_H -- this line is updated by ./configure */
    #  include <sys/types.h> /* for off_t */
    #  include <unistd.h>    /* for SEEK_* and off_t */
    #  ifdef VMS
    #    include <unixio.h>   /* for off_t */
    #  endif
    #  define z_off_t off_t
    #endif
    

    这几行替换为以下代码:

    #ifdef HAVE_UNISTD_H
    #include <sys types.h=""> / for off_t /
    #include <unistd.h> / for SEEK_ and off_t */
    #define z_off_t off_t
    #endif
    

    这是因为windows下没有unistd.h这个文件,这是类unix系统才有的。

  7. 顺手编译通过,生成动态链接库。

编译步骤

  1. 在VS中下载Qt插件(全名Qt Visual Studio
    Tools)并安装,安装后安排下插件使用的Qt版本。
  2. 在sourceforge官网下载QuaZip源码,并解压缩。
  3. 用插件打开QuaZip解压缩目录下quazip子目录中的quazip.pro工程文件(VS会提醒重新生成配置文件,选拔“是”)。
  4. 下载zlib的源代码,并解压缩。
  5. 在VS项目性质中添加解压后的zlib源文件,具体请百度。
  6. 关键来了,用VS打开zconf.h文件,并将:

    #if 1           /* HAVE_UNISTD_H -- this line is updated by ./configure */
    #  include <sys/types.h> /* for off_t */
    #  include <unistd.h>    /* for SEEK_* and off_t */
    #  ifdef VMS
    #    include <unixio.h>   /* for off_t */
    #  endif
    #  define z_off_t off_t
    #endif
    

    这几行替换为以下代码:

    #ifdef HAVE_UNISTD_H
    #include <sys types.h=""> / for off_t /
    #include <unistd.h> / for SEEK_ and off_t */
    #define z_off_t off_t
    #endif
    

    这是因为windows下没有unistd.h这么些文件,这是类unix系统才有的。

  7. 得手编译通过,生成动态链接库。

感想

  1. 无数开源软件对windows系统的支撑不是很好,就像QuaZip,假如你用zlib源码一起编译,这会更蛋疼。
  2. 开软软件的保障更新是一大重点问题,下边异常bug实际上已经存在9年了,平素尚未到手修改。

感想

  1. 不少开源软件对windows系统的援助不是很好,就像QuaZip,如若您用zlib源码一起编译,那会更蛋疼。
  2. 开软软件的掩护更新是一大重点问题,上边异常bug实际上已经存在9年了,一贯没有到手修改。

相关文章