PyInstaller-Übersicht
PyInstaller bündelt eine Python-Anwendung und alle ihre Abhängigkeiten in einem einzigen Paket. Der Benutzer kann die gepackte App ausführen, ohne einen Python-Interpreter oder andere Module zu installieren.
Dokumentation: | https://pyinstaller.org/ |
---|
Code: | https://github.com/pyinstaller/pyinstaller |
---|
PyInstaller liest ein von Ihnen geschriebenes Python-Skript. Es analysiert Ihren Code, um alle anderen Module und Bibliotheken zu ermitteln, die Ihr Skript zur Ausführung benötigt. Dann sammelt es Kopien all dieser Dateien – einschließlich des aktiven Python-Interpreters! – und legt sie mit Ihrem Skript in einem einzelnen Ordner oder optional in einer einzelnen ausführbaren Datei ab.
PyInstaller wurde unter Windows, macOS und GNU/Linux getestet. Es handelt sich jedoch nicht um einen Cross-Compiler: Um eine Windows-App zu erstellen, führen Sie PyInstaller in Windows aus. Um eine GNU/Linux-App zu erstellen, führen Sie sie unter GNU/Linux usw. aus. PyInstaller wurde erfolgreich mit AIX, Solaris, FreeBSD und OpenBSD verwendet, wird jedoch im Rahmen der kontinuierlichen Integrationstests nicht gegen diese getestet.
Hauptvorteile
- Funktioniert sofort mit jeder Python-Version 3.8–3.13.
- Vollständig plattformübergreifend und nutzt die Betriebssystemunterstützung zum Laden der dynamischen Bibliotheken, wodurch vollständige Kompatibilität gewährleistet ist.
- Bündelt die wichtigsten Python-Pakete wie Numpy, PyQt5, PySide2, PyQt6, PySide6, wxPython, Matplotlib und andere sofort und korrekt.
- Kompatibel mit vielen Paketen von Drittanbietern. (Alle erforderlichen Tricks, damit externe Pakete funktionieren, sind bereits integriert.)
- Funktioniert mit Codesignatur unter macOS.
- Bündelt MS Visual C++-DLLs unter Windows.
Installation
PyInstaller ist auf PyPI verfügbar. Sie können es über pip installieren:
Anforderungen und getestete Plattformen
- Python:
- 3,8-3,13. Beachten Sie, dass Python 3.10.0 einen Fehler enthält, der es von PyInstaller nicht unterstützt. PyInstaller funktioniert auch nicht mit Betaversionen von Python 3.14.
- Windows (32bit/64bit/ARM64):
- PyInstaller sollte unter Windows 7 oder neuer funktionieren, wir unterstützen jedoch offiziell nur Windows 8+.
- Für die Unterstützung von Python, das aus dem Windows Store ohne Verwendung virtueller Umgebungen installiert wird, ist PyInstaller 4.4 oder höher erforderlich.
- Linux:
- GNU libc-basierte Distributionen auf den Architekturen
x86_64
, aarch64
, i686
, ppc64le
, s390x
. - musl libc-basierte Distributionen auf den Architekturen
x86_64
, aarch64
. - ldd: Konsolenanwendung zum Drucken der gemeinsam genutzten Bibliotheken, die für jedes Programm oder jede gemeinsam genutzte Bibliothek erforderlich sind. Dies ist normalerweise im Distributionspaket glibc oder libc-bin zu finden.
- objdump: Konsolenanwendung zum Anzeigen von Informationen aus Objektdateien. Dies ist normalerweise in den Binutils des Distributionspakets zu finden.
- objcopy: Konsolenanwendung zum Kopieren und Übersetzen von Objektdateien. Dies ist normalerweise auch in den Binutils des Distributionspakets zu finden.
- Raspberry Pi-Benutzer auf
armv5
– armv7
sollten piwheels als zusätzliche Index-URL hinzufügen und dann wie gewohnt pip install pyinstaller
.
- macOS (
x86_64
oder arm64
): - macOS 10.15 (Catalina) oder neuer.
- Unterstützt die Erstellung von
universal2
-Anwendungen, vorausgesetzt, dass Ihre Python-Installation und alle Ihre Abhängigkeiten ebenfalls universal2
kompiliert sind.
Verwendung
Die grundlegende Verwendung ist sehr einfach. Führen Sie es einfach mit Ihrem Hauptskript aus:
pyinstaller /path/to/yourscript.py
Weitere Einzelheiten finden Sie im Handbuch.
Ungetestete Plattformen
Die folgenden Plattformen wurden bereitgestellt und jegliches Feedback oder Verbesserungen dazu sind willkommen.
- FreeBSD
- Solaris
- AIX
- AIX 6.1 oder neuer. PyInstaller funktioniert nicht mit statisch verknüpften Python-Bibliotheken.
- ldd
- Linux auf jeder anderen libc-Implementierung/Architektur-Kombination, die oben nicht aufgeführt ist.
Bevor Sie eine bereitgestellte Plattform verwenden, müssen Sie den PyInstaller-Bootloader erstellen. Dies geschieht automatisch, wenn Sie pip install pyinstaller
vorausgesetzt, Sie haben einen geeigneten C-Compiler (normalerweise entweder gcc
oder clang
) und die Entwicklungsheader von zlib bereits installiert.
Unterstützung
- Offizielle Debugging-Anleitung: https://pyinstaller.org/en/v6.11.1/when-things-go-wrong.html
- Verschiedene von Benutzern beigesteuerte Hilfethemen: https://github.com/pyinstaller/pyinstaller/wiki
- Webbasierte Frage-und-Antwort-Foren: https://github.com/pyinstaller/pyinstaller/discussions
- E-Mail-basierte Frage-und-Antwort-Foren: https://groups.google.com/g/pyinstaller
Änderungen in dieser Version
Eine detaillierte Liste der Änderungen in dieser Version finden Sie im Abschnitt „Änderungsprotokoll“ des Handbuchs.