PyQt-builder
The PyQt build system
What it is and what it does
PyQt-builder is a build system backend designed for projects that extend or depend on PyQt. It bridges the Python packaging world (PEP 517) with Qt's native build toolchain by wrapping the SIP code generator and qmake compiler. When a project provides a pyproject.toml file and optional project.py script, any standard Python build frontend like pip or the build package can invoke PyQt-builder to generate compiled extension modules.
The package is primarily a tool for library authors and maintainers rather than application developers. It handles the plumbing of translating Python-to-C++ bindings via SIP and compiling them against Qt libraries. Most users will encounter it indirectly when installing PyQt or PyQt-based packages; direct use is typical only when developing or packaging PyQt extensions.
Use it for:
- Building PyQt from source when binary wheels are unavailable or customization is needed.
- Packaging custom PyQt extensions that wrap additional Qt libraries or functionality.
- Automating CI/CD pipelines for projects that depend on PyQt and need reproducible builds.
- Developing PyQt bindings for new Qt modules or third-party Qt-based libraries.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
PyQt-builder is a PEP 517 compliant build system for PyQt and PyQt-based projects, extending the SIP build system and using Qt's qmake to compile and install extension modules.
Yes, if you are developing or packaging PyQt-based projects. Install it as a build-time dependency in your pyproject.toml rather than directly; standard build frontends will invoke it automatically. Not needed for end users installing pre-built PyQt wheels. No known security vulnerabilities and low install friction make it safe to use.
Install
pyqt-builder on PyPI
pip
pip install pyqt-builderuv
uv add pyqt-builderpoetry
poetry add pyqt-builderInstalling PyQt-builder
Before you install
Low friction: pure Python wheel with only two runtime dependencies (packaging and sip). Maintenance shows aging status with last commit 252 days ago, but the repository remains active and not archived.
License in practice
BSD-2-Clause is permissive; you can use, modify, and distribute this package with minimal restrictions, provided you retain the license notice.
Quickstart
pip install pyqt-builder
In pyproject.toml:
[build-system]
requires = ["pyqt-builder", "sip", "packaging"]
build-backend = "pyqtbuild.build"
Then build with: python -m build
Qt development libraries and qmake must be available on the system for compilation to succeed.
Verify before relying
- Whether this package is intended for end users or primarily for PyQt library maintainers and extension developers.
- Specific Qt version requirements or compatibility constraints for qmake integration.
Package facts
| License | BSD-2-Clause (permissive) |
| Python support | supports the current Python release (>=3.8) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 2 — packaging, sip |
| Maintenance | aging — 252 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 92,510/month — #13,447 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: pyqt_builder-1.19.1-py3-none-any.whl
Tags
More Build Tools packages
Provides reusable utilities for Python…
permissive · top 100 on PyPI
tqdmWraps any iterable to display a real-time…
copyleft · top 100 on PyPI
pippip is the standard installer for Python…
permissive · top 100 on PyPI
hatchlingHatchling is a standards-compliant Python build…
permissive · top 100 on PyPI
grpcio-toolsGenerates Python gRPC service stubs and message…
permissive · top 1,000 on PyPI
pre-commitpre-commit is a framework for installing and…
permissive · top 1,000 on PyPI
PyQt6-sipPyQt6-sip provides the runtime support module…
permissive · top 5,000 on PyPI
PyQt5-sipPyQt5-sip provides the runtime support module…
permissive · top 5,000 on PyPI
meson-pythonmeson-python is a PEP 517 build backend that…
permissive · top 5,000 on PyPI
pdm-backendA PEP 517-compliant build backend that reads…
permissive · top 5,000 on PyPI
poetry-corepoetry-core is a PEP 517 build backend that…
permissive · top 1,000 on PyPI
pep517Provides subprocess-isolated wrappers around…
permissive · top 5,000 on PyPI
pdm-pep517A PEP 517 build backend that reads PEP 621…
permissive · top 15,000 on PyPI
buildBuilds Python packages in isolated…
permissive · top 1,000 on PyPI
whoolwhool is a PEP 517 and PEP 660 compliant build…
permissive · top 15,000 on PyPI
sipSIP generates Python bindings for C and C++…
permissive · top 15,000 on PyPI