Zig PyPI distribution
Zig is a general-purpose programming language and toolchain for maintaining robust, optimal, and reusable software. The ziglang Python package redistributes the Zig toolchain so that it can be used as a dependency of Python projects.
Rationale
Although Zig is useful in itself, the Zig toolchain includes a drop-in C and C++ compiler, zig cc, based on clang. Unlike clang itself, zig cc is standalone: it does not require additional development files to be installed to target any of the platforms it supports. Through zig cc, Python code that generates C or C++ code can build it without any external dependencies.
Usage
To run the Zig toolchain from the command line, use:
python -m ziglang
To run the Zig toolchain from a Python program, use sys.executable to locate the Python binary to invoke. For example:
import sys, subprocess
subprocess.call([sys.executable, "-m", "ziglang"])
Binary wrapper
The ziglang Python package installs a binary wrapper for the Zig compiler under the name python-zig; the name is different to avoid conflicts with any system-wide or user-wide zig binaries that may be already installed.
Using with uv
The Zig compiler distributed in this Python package can be launched by uv without installation:
uvx --from ziglang python-zig
License
The Zig license.
Metadata
Release files for ziglang 0.17.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distributions (wheels)
| File | Reset | |||
|---|---|---|---|---|
| ziglang-0.17.0-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.musllinux_1_1_armv7l.whl | Python 3 | none | Linux musl 1.1+ ARMv7l, Linux glibc 2.17+ ARMv7l | Details |
| ziglang-0.17.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.musllinux_1_1_aarch64.whl | Python 3 | none | Linux glibc 2.17+ ARM64, Linux musl 1.1+ ARM64 | Details |
| ziglang-0.17.0-py3-none-manylinux_2_12_x86_64.manylinux2010_x86_64.musllinux_1_1_x86_64.whl | Python 3 | none | Linux musl 1.1+ x86-64, Linux glibc 2.12+ x86-64 | Details |
| ziglang-0.17.0-py3-none-manylinux_2_12_i686.manylinux2010_i686.musllinux_1_1_i686.whl | Python 3 | none | Linux musl 1.1+ x86-32, Linux glibc 2.12+ x86-32 | Details |
| ziglang-0.17.0-py3-none-macosx_13_0_x86_64.whl | Python 3 | none | macOS 13.0+ x86-64 | Details |
| ziglang-0.17.0-py3-none-macosx_13_0_arm64.whl | Python 3 | none | macOS 13.0+ ARM64 | Details |
Total release size: 607.5 MB
Release files / ziglang-0.17.0-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.musllinux_1_1_armv7l.whl
| Download URL | ziglang-0.17.0-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.musllinux_1_1_armv7l.whl |
|---|---|
| Size | 99.0 MB |
| Tags | Linux glibc 2.17+ ARMv7l Linux musl 1.1+ ARMv7l Python 3 |
|
SHA-256 checksum How to use checksums |
2f1506fbd4080ae55c7f3c5abe99cce226e563827f50e8f143e36decc615310f
|
|
BLAKE2b-256 checksum How to use checksums |
2a75de0d1cbe3b6fc6c878f55c42039e8e5a0f7bca1055d6d584c71be1469bd5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.11.2
|
Release files / ziglang-0.17.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.musllinux_1_1_aarch64.whl
| Download URL | ziglang-0.17.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.musllinux_1_1_aarch64.whl |
|---|---|
| Size | 98.0 MB |
| Tags | Linux glibc 2.17+ ARM64 Linux musl 1.1+ ARM64 Python 3 |
|
SHA-256 checksum How to use checksums |
d2804f94f54f7fcf8169f4b212a619ad688a4e2e6592e976f0cf2e58e2cd8af3
|
|
BLAKE2b-256 checksum How to use checksums |
0221abee2f0524f54fe3e8783748b9df79bb07d4b955e6b465677d1cfbda335c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.11.2
|
Release files / ziglang-0.17.0-py3-none-manylinux_2_12_x86_64.manylinux2010_x86_64.musllinux_1_1_x86_64.whl
| Download URL | ziglang-0.17.0-py3-none-manylinux_2_12_x86_64.manylinux2010_x86_64.musllinux_1_1_x86_64.whl |
|---|---|
| Size | 101.0 MB |
| Tags | Linux glibc 2.12+ x86-64 Linux musl 1.1+ x86-64 Python 3 |
|
SHA-256 checksum How to use checksums |
97079827064a7492cce5541ceb438ae8003ce1e54e399676da2d62fb7a5dc08b
|
|
BLAKE2b-256 checksum How to use checksums |
fe6fe1c380fe61db36cb464d5d4d18c557338812500986885373e2550d4ebf6b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.11.2
|
Release files / ziglang-0.17.0-py3-none-manylinux_2_12_i686.manylinux2010_i686.musllinux_1_1_i686.whl
| Download URL | ziglang-0.17.0-py3-none-manylinux_2_12_i686.manylinux2010_i686.musllinux_1_1_i686.whl |
|---|---|
| Size | 104.6 MB |
| Tags | Linux glibc 2.12+ x86-32 Linux musl 1.1+ x86-32 Python 3 |
|
SHA-256 checksum How to use checksums |
81e3057db80fb459d1ab13c3db13dbcb1e99e91c36281661831d1916eba924de
|
|
BLAKE2b-256 checksum How to use checksums |
78e6130dd7c78d7556a7d2a8975cf9e50417a31c1e789428d3f8571ef71aa636
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.11.2
|
Release files / ziglang-0.17.0-py3-none-macosx_13_0_x86_64.whl
| Download URL | ziglang-0.17.0-py3-none-macosx_13_0_x86_64.whl |
|---|---|
| Size | 104.4 MB |
| Tags | Python 3 macOS 13.0+ x86-64 |
|
SHA-256 checksum How to use checksums |
4d910f0e363ddb60a6b8ddb55235617797a8ccbcb6c5c7132a949d9f833eea42
|
|
BLAKE2b-256 checksum How to use checksums |
e2524f8a8f157d994482e501bb37e01f4883990b9848b9d8b809fe95e97aac6d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.11.2
|
Release files / ziglang-0.17.0-py3-none-macosx_13_0_arm64.whl
| Download URL | ziglang-0.17.0-py3-none-macosx_13_0_arm64.whl |
|---|---|
| Size | 100.4 MB |
| Tags | Python 3 macOS 13.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
87274af689c4128051b26c80f6f676757e0a81c2fdc137fd8b5679e928e4bc4f
|
|
BLAKE2b-256 checksum How to use checksums |
37fa54dd03b21fa790a85e1de39eeda9703386fe519490598abdb38894a1c3b3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.11.2
|