Nuitka
Python compiler with full language support and CPython compatibility
What it is and what it does
Nuitka is a Python-to-C compiler that translates Python source code into C, which is then compiled to machine binaries using a system C compiler. It supports Python 2.6–2.7 and Python 3.4–3.14, emulating CPython semantics closely enough that compiled and uncompiled code can run together. The compiler aims to eliminate unnecessary overhead while maintaining compatibility with all Python library modules and extension modules.
You use Nuitka via the command line (typically `python -m nuitka`) to compile a Python script or module into a standalone executable or accelerated binary. It requires a C compiler (gcc, clang, Visual Studio, MinGW64, or zig) and the matching Python implementation (CPython, Anaconda, or Homebrew Python) to be present on the build machine. Compiled binaries can be made portable across machines using `--mode=standalone` or `--mode=onefile` options.
Use it for:
- Distribute Python applications as standalone executables without requiring Python installation on end-user machines.
- Accelerate performance-critical Python code by compiling it ahead-of-time to native machine code.
- Protect source code by shipping compiled binaries instead of readable Python scripts.
- Create cross-platform command-line tools or desktop applications from Python codebases.
- Bundle Python applications with all dependencies into a single executable file using onefile mode.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Nuitka compiles Python code to C and then to machine binaries, supporting Python 2.6–2.7 and Python 3.4–3.14 with full language compatibility and CPython semantics.
Yes, if you need to distribute Python as compiled binaries or accelerate performance-critical code and can accept the high installation friction (C compiler requirement) and AGPLv3+ licensing constraints. The project is actively maintained, widely used (top 15000 on PyPI), and has no known vulnerabilities. Not recommended for proprietary closed-source projects due to copyleft licensing, or for environments where installing a C compiler is impractical.
Install
nuitka on PyPI
pip
pip install nuitkauv
uv add nuitkapoetry
poetry add nuitkaInstalling Nuitka
Before you install
Installation requires a C compiler (gcc, clang, Visual Studio, MinGW64, or zig) and involves downloading and building C artifacts, resulting in high friction. The project is actively maintained with recent releases and a large repository (15087 stars).
License in practice
Nuitka is licensed under GNU Affero General Public License v3 or later (AGPLv3+). This copyleft license requires that any modifications or derivative works be distributed under the same license and made available to users; it also includes a network use clause. Proprietary or closed-source projects may face licensing constraints.
Quickstart
pip install nuitka
python -m nuitka --help
python -m nuitka --onefile your_script.py
Requires a C compiler (gcc 5.1+, clang, Visual Studio 2022+, MinGW64, or zig) installed on the system; CPython (not PyPy, pyenv on macOS, or Windows Store Python) must be the active interpreter.
Verify before relying
- Performance improvement magnitude and compilation time overhead for typical projects.
- Compatibility edge cases with C extensions and third-party modules beyond the documented scope.
- Practical experience with standalone mode portability across different OS/architecture combinations.
Package facts
| License | GNU Affero General Public License v3 (agpl) |
| Python support | not specified |
| Install friction | high — source build required |
| Runtime dependencies | none |
| Maintenance | actively maintained — 54 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 496,362/month — #6,337 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: nuitka-4.1.3.tar.gz
Keywords: compiler, python, nuitka
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
ziglangDistributes the Zig programming language…
permissive · top 5,000 on PyPI
pyinstallerPyInstaller bundles a Python application and…
copyleft · top 5,000 on PyPI
DafnyRuntimePythonProvides the Python runtime library needed to…
permissive · top 15,000 on PyPI
pythranPythran is an ahead-of-time compiler that…
unclear · top 5,000 on PyPI
maturinMaturin builds and publishes Python packages…
permissive · top 5,000 on PyPI
nvidia-cuda-nvccProvides the NVIDIA CUDA nvcc compiler for…
unclear · top 5,000 on PyPI
pycparserpycparser is a C language parser written in…
permissive · top 100 on PyPI
numbaNumba is a just-in-time compiler that…
permissive · top 1,000 on PyPI
pccmPCCM manages Python-to-C++ code generation and…
permissive · top 15,000 on PyPI
solc-selectManages installation and switching between…
agpl · top 15,000 on PyPI