QuaZip `quazip/`

Type: ZIP Archive Library (Qt C++ Wrapper)
License: LGPL-2.1-or-later
Fork Origin: GitHub
Status: Detached Fork (independently maintained)
Dependencies: Qt 5/6, zlib Latest Version: 0.0.5-1

CI


Overview

QuaZip is the C++ wrapper for Gilles Vollant's ZIP/UNZIP package (Minizip) using the Qt library. If you need to write files to a ZIP archive or read files from one using the QIODevice API, QuaZip is the tool you need.


Usage in ProjT Launcher

QuaZip is used for:

  • Mod installation — Extracting mod archives
  • Modpack handling — Processing CurseForge/Modrinth packs
  • Resource packs — Managing Minecraft resource packs
  • Backup/restore — Creating instance backups

Features

Feature Status
Read/Write ZIP files
Qt stream integration (QIODevice)
Unicode filename support
ZIP64 support (files > 4GB)
BZIP2 compression
Password protection (read)

Documentation

Resource Description
Migration Guide Migration guide to QuaZip 1.x
Online Docs Full documentation
quazip/qztest/ Test suite and examples

Build Instructions

Prerequisites

  • Qt 5.12+ or Qt 6.x
  • zlib (or Qt's bundled zlib)
  • CMake 3.15+
  • libbz2 (optional, for BZIP2 support)

Linux

sudo apt-get install libbz2-dev
cmake -B build
cmake --build build

Windows

When using Qt online installer with MSVC, select MSVC 20XY 64-bit and under additional libraries, select Qt 5 Compatibility Module. Add C:\Qt\6.8.2\msvc20XY_64 to your PATH.

Using vcpkg (x64)

cmake --preset vcpkg
cmake --build build --config Release

Using Conan v2 (x64)

conan install . -of build -s build_type=Release -o *:shared=False --build=missing
cmake --preset conan
cmake --build build --config Release

Complete Build Workflow

cmake -B build -DQUAZIP_QT_MAJOR_VERSION=6 -DBUILD_SHARED_LIBS=ON -DQUAZIP_ENABLE_TESTS=ON
cmake --build build --config Release
sudo cmake --install build
cd build && ctest --verbose -C Release

CMake Options

Option Description Default
QUAZIP_QT_MAJOR_VERSION Qt version to search for (5 or 6) Auto-detect
BUILD_SHARED_LIBS Build as shared library ON
QUAZIP_LIB_FILE_NAME Output library name quazip<ver>-qt<ver>
QUAZIP_INSTALL Enable installation ON
QUAZIP_USE_QT_ZLIB Use Qt's bundled zlib (not recommended) OFF
QUAZIP_ENABLE_TESTS Build test suite OFF
QUAZIP_BZIP2 Enable BZIP2 compression ON
QUAZIP_BZIP2_STDIO Output BZIP2 errors to stdio ON
QUAZIP_ENABLE_QTEXTCODEC Enable QTextCodec on Qt6 ON

Copyright & Licensing

Copyright (C) 2005-2020 Sergey A. Tachenov and contributors

Distributed under LGPL-2.1-or-later. See quazip/COPYING for details.

Original ZIP package is copyrighted by Gilles Vollant (zlib license).


Contributing


Related Documentation


External Links

Was this handbook page helpful?

This page is part of the Project Tick Handbook, which is licensed under the Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license. View full license details.
Last updated: April 18, 2026