Skip to main content
PyPI PyPI - Python Version Read the Docs (version) PyPI - Downloads

PyInstaller bundles a Python application and all its dependencies into a single package. The user can run the packaged app without installing a Python interpreter or any modules.

Documentation:

https://pyinstaller.org/

Code:

https://github.com/pyinstaller/pyinstaller

PyInstaller reads a Python script written by you. It analyzes your code to discover every other module and library your script needs in order to execute. Then it collects copies of all those files – including the active Python interpreter! – and puts them with your script in a single folder, or optionally in a single executable file.

PyInstaller is tested against Windows, macOS, and GNU/Linux. However, it is not a cross-compiler: to make a Windows app you run PyInstaller in Windows; to make a GNU/Linux app you run it in GNU/Linux, etc. PyInstaller has been used successfully with AIX, Solaris, FreeBSD and OpenBSD, but is not tested against them as part of the continuous integration tests.

Main Advantages

  • Works out-of-the-box with any Python version 3.7-3.11.

  • Fully multi-platform, and uses the OS support to load the dynamic libraries, thus ensuring full compatibility.

  • Correctly bundles the major Python packages such as numpy, PyQt5, PySide2, PyQt6, PySide6, wxPython, matplotlib and others out-of-the-box.

  • Compatible with many 3rd-party packages out-of-the-box. (All the required tricks to make external packages work are already integrated.)

  • Works with code signing on macOS.

  • Bundles MS Visual C++ DLLs on Windows.

Installation

PyInstaller is available on PyPI. You can install it through pip:

pip install pyinstaller

Requirements and Tested Platforms

  • Python:
    • 3.7-3.11. Note that Python 3.10.0 contains a bug making it unsupportable by PyInstaller. PyInstaller will also not work with beta releases of Python 3.12.

    • tinyaes 1.0+ (only if using bytecode encryption). Instead of installing tinyaes, pip install pyinstaller[encryption] instead.

  • Windows (32bit/64bit):
    • PyInstaller should work on Windows 7 or newer, but we only officially support Windows 8+.

    • Support for Python installed from the Windows store without using virtual environments requires PyInstaller 4.4 or later.

    • Note that Windows on arm64 is not yet supported. If you have such a device and want to help us add arm64 support then please let us know on our issue tracker.

  • Linux:
    • GNU libc based distributions on architectures x86_64, aarch64, i686, ppc64le, s390x.

    • musl libc based distributions on architectures x86_64, aarch64.

    • ldd: Console application to print the shared libraries required by each program or shared library. This typically can be found in the distribution-package glibc or libc-bin.

    • objdump: Console application to display information from object files. This typically can be found in the distribution-package binutils.

    • objcopy: Console application to copy and translate object files. This typically can be found in the distribution-package binutils, too.

    • Raspberry Pi users on armv5-armv7 should add piwheels as an extra index url then pip install pyinstaller as usual.

  • macOS (x86_64 or arm64):
    • macOS 10.15 (Catalina) or newer.

    • Supports building universal2 applications provided that your installation of Python and all your dependencies are also compiled universal2.

Usage

Basic usage is very simple, just run it against your main script:

pyinstaller /path/to/yourscript.py

For more details, see the manual.

Untested Platforms

The following platforms have been contributed and any feedback or enhancements on these are welcome.

  • FreeBSD
    • ldd

  • Solaris
    • ldd

    • objdump

  • AIX
    • AIX 6.1 or newer. PyInstaller will not work with statically linked Python libraries.

    • ldd

  • Linux on any other libc implementation/architecture combination not listed above.

Before using any contributed platform, you need to build the PyInstaller bootloader. This will happen automatically when you pip install pyinstaller provided that you have an appropriate C compiler (typically either gcc or clang) and zlib’s development headers already installed.

Support

Changes in this Release

You can find a detailed list of changes in this release in the Changelog section of the manual.

Release files for pyinstaller 5.6.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pyinstaller 5.6.2
File Size Uploaded
pyinstaller-5.6.2.tar.gz 2.4 MB Details

Built distributions (wheels)

Table of built distributions (wheels) for pyinstaller 5.6.2
File
pyinstaller-5.6.2-py3-none-win_amd64.whl Python 3 none Windows x86-64 Details
pyinstaller-5.6.2-py3-none-win32.whl Python 3 none Windows x86-32 Details
pyinstaller-5.6.2-py3-none-musllinux_1_1_x86_64.whl Python 3 none Linux musl 1.1+ x86-64 Details
pyinstaller-5.6.2-py3-none-musllinux_1_1_aarch64.whl Python 3 none Linux musl 1.1+ ARM64 Details
pyinstaller-5.6.2-py3-none-manylinux2014_x86_64.whl Python 3 none Linux glibc 2.17+ x86-64 Details
pyinstaller-5.6.2-py3-none-manylinux2014_s390x.whl Python 3 none Linux glibc 2.17+ IBM System/390x Details
pyinstaller-5.6.2-py3-none-manylinux2014_ppc64le.whl Python 3 none Linux glibc 2.17+ PowerPC 64-le Details
pyinstaller-5.6.2-py3-none-manylinux2014_i686.whl Python 3 none Linux glibc 2.17+ x86-32 Details
pyinstaller-5.6.2-py3-none-manylinux2014_aarch64.whl Python 3 none Linux glibc 2.17+ ARM64 Details
pyinstaller-5.6.2-py3-none-macosx_10_13_universal2.whl Python 3 none macOS 10.13+ universal2 (ARM64, x86-64) Details

Total release size: 9.8 MB

Release files / pyinstaller-5.6.2.tar.gz

Download URL pyinstaller-5.6.2.tar.gz
Size 2.4 MB
Tags Source
SHA-256 checksum
How to use checksums
865025b6809d777bb0f66d8f8ab50cc97dc3dbe0ff09a1ef1f2fd646432714fc
BLAKE2b-256 checksum
How to use checksums
369532b67f2b6945c34400524284e582025269cf992c6994ff36ed8899e4cf58
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.10.4

Release files / pyinstaller-5.6.2-py3-none-win_amd64.whl

Download URL pyinstaller-5.6.2-py3-none-win_amd64.whl
Size 1.2 MB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
04ecf805bde2ef25b8e3642410871e6747c22fa7254107f155b8cd179c2a13b6
BLAKE2b-256 checksum
How to use checksums
e58a5b093e5d8381fd4af783e81d5a32afb090bc6b46909f62e97331e2d79e5b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.10.4

Release files / pyinstaller-5.6.2-py3-none-win32.whl

Download URL pyinstaller-5.6.2-py3-none-win32.whl
Size 1.2 MB
Tags Python 3 Windows x86-32
SHA-256 checksum
How to use checksums
e026adc92c60158741d0bfca27eefaa2414801f61328cb84d0c88241fe8c2087
BLAKE2b-256 checksum
How to use checksums
681b1bb18715188d1947a4cb2d1234ffdb585aa8b0bf7045de3db30147de1a79
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.10.4

Release files / pyinstaller-5.6.2-py3-none-musllinux_1_1_x86_64.whl

Download URL pyinstaller-5.6.2-py3-none-musllinux_1_1_x86_64.whl
Size 595.7 kB
Tags Linux musl 1.1+ x86-64 Python 3
SHA-256 checksum
How to use checksums
d888db9afedff290d362ee296d30eb339abeba707ca1565916ce1cd5947131c3
BLAKE2b-256 checksum
How to use checksums
0bfcb00209974b0353a17c0b1a3c69dc574a44e0c6b4481cd247da6628bfd6ad
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.10.4

Release files / pyinstaller-5.6.2-py3-none-musllinux_1_1_aarch64.whl

Download URL pyinstaller-5.6.2-py3-none-musllinux_1_1_aarch64.whl
Size 598.9 kB
Tags Linux musl 1.1+ ARM64 Python 3
SHA-256 checksum
How to use checksums
77888f52b61089caa0bee70809bbce9e9b1c613c88b6cb0742ff2a45f1511cbb
BLAKE2b-256 checksum
How to use checksums
d0ee83b39621d2590750a2b5f91b954760815c0d2fe8a23455570f44d1e73f73
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.10.4

Release files / pyinstaller-5.6.2-py3-none-manylinux2014_x86_64.whl

Download URL pyinstaller-5.6.2-py3-none-manylinux2014_x86_64.whl
Size 594.9 kB
Tags Linux glibc 2.17+ x86-64 Python 3
SHA-256 checksum
How to use checksums
181856ade585b090379ae26b7017dc2c30620e36e3a804b381417a6dc3b2a82b
BLAKE2b-256 checksum
How to use checksums
db2772d7446a2fafc72cfd5da5e79a0f75f48d559c911ebcf011d2b680890ecc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.10.4

Release files / pyinstaller-5.6.2-py3-none-manylinux2014_s390x.whl

Download URL pyinstaller-5.6.2-py3-none-manylinux2014_s390x.whl
Size 595.2 kB
Tags Linux glibc 2.17+ IBM System/390x Python 3
SHA-256 checksum
How to use checksums
32727232f446aa96e394f01b0c35b3de0dc3513c6ba3e26d1ef64c57edb1e9e5
BLAKE2b-256 checksum
How to use checksums
cff48931138d0dccdd618404db543f752a592598870b09bfe29d56696d72e3a3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.10.4

Release files / pyinstaller-5.6.2-py3-none-manylinux2014_ppc64le.whl

Download URL pyinstaller-5.6.2-py3-none-manylinux2014_ppc64le.whl
Size 602.4 kB
Tags Linux glibc 2.17+ PowerPC 64-le Python 3
SHA-256 checksum
How to use checksums
0d167d57036219914188f1400427dd297b975707e78c32a5511191e607be920a
BLAKE2b-256 checksum
How to use checksums
3fe0fed5a9ec6dc675cb3db0d1a32d862ef935387e9aca90d3c25c6c55222b3d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.10.4

Release files / pyinstaller-5.6.2-py3-none-manylinux2014_i686.whl

Download URL pyinstaller-5.6.2-py3-none-manylinux2014_i686.whl
Size 598.8 kB
Tags Linux glibc 2.17+ x86-32 Python 3
SHA-256 checksum
How to use checksums
eb083c25f711769af0898852ea30dcb727ba43990bbdf9ffbaa9c77a7bd0d720
BLAKE2b-256 checksum
How to use checksums
621ebf412719a17796f3d1d3908f021b8d74060df1a127ae36877c4e253320e5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.10.4

Release files / pyinstaller-5.6.2-py3-none-manylinux2014_aarch64.whl

Download URL pyinstaller-5.6.2-py3-none-manylinux2014_aarch64.whl
Size 597.2 kB
Tags Linux glibc 2.17+ ARM64 Python 3
SHA-256 checksum
How to use checksums
05df5d2b9ca645cc6ef61d8a85451d2aabe5501997f1f50cd94306fd6bc0485d
BLAKE2b-256 checksum
How to use checksums
ffe090795b7c663aa3b4c6a398b56124dcbf37ba2655f10967a1e11e3c9bbfc6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.10.4

Release files / pyinstaller-5.6.2-py3-none-macosx_10_13_universal2.whl

Download URL pyinstaller-5.6.2-py3-none-macosx_10_13_universal2.whl
Size 868.5 kB
Tags Python 3 macOS 10.13+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
1b1e3b37a22fb36555d917f0c3dfb998159ff4af6d8fa7cc0074d630c6fe81ad
BLAKE2b-256 checksum
How to use checksums
a3eeb52a6f7d790e0d15929d0aa0b2981d1d6595331459ad7e0b18ed23e25701
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.10.4

Release history Release notifications | RSS feed

6.7.0

12 release files

6.6.0

12 release files

6.4.0

12 release files

6.3.0

12 release files

6.2.0

12 release files

6.1.0

12 release files

6.0.0

12 release files

5.9.0

12 release files

5.8.0

12 release files

This release

5.6.2 This release

11 release files

5.6.1

11 release files

5.6

11 release files

5.5

11 release files

5.4.1

11 release files

5.4

11 release files

5.3

11 release files

5.2

11 release files

5.1

11 release files

5.0.1

11 release files

5.0

11 release files

4.10

11 release files

4.9

11 release files

4.8

11 release files

4.7

9 release files

4.6

9 release files

4.5.1

7 release files

4.5

6 release files

4.4

7 release files

4.3

1 release file

4.2

1 release file

4.1

1 release file

4.0

1 release file

3.6

1 release file

3.5

1 release file

3.4

1 release file

3.3.1

1 release file

3.3

1 release file

3.2.1

1 release file

3.2

2 release files

3.1.1

2 release files

3.1

1 release file

3.0

1 release file

2.1

2 release files

2.0

2 release files

1.5.1

1.5

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page