====== PyInstaller ======
Módulo de [[..:..:python|Python]] que permite empaquetar una aplicación de Python y todas sus dependencias en un único fichero ejecutable.
* [[https://github.com/pyinstaller/pyinstaller|Repositorio de código]]
* [[https://pyinstaller.org/en/stable/|Documentación]]
===== Ventajas =====
* Permite convertir scripts de Python en ejecutables independientes
* No requiere que el usuario tenga Python instalado
* Incluye automáticamente la mayoría de dependencias (por ejemplo, PySide o Qt)
* Soporta múltiples plataformas (Linux, Windows, macOS)
* Fácil de usar con comandos simples
* Permite generar un único archivo ejecutable (''%%--%%onefile'')
* Compatible con muchas librerías populares
* Muy utilizado y con buena documentación
===== Desventajas =====
* El tamaño del ejecutable final suele ser grande
* No es un compilador real (no genera código nativo optimizado)
* Puede haber problemas con dependencias complejas (especialmente en apps gráficas)
* La compilación cruzada no está soportada (hay que generar el ejecutable en cada sistema operativo)
* El arranque de ejecutables ''%%--%%onefile'' puede ser más lento
* Puede requerir configuración adicional en proyectos grandes
* Algunos antivirus pueden detectar falsos positivos (especialmente con UPX)
* Depuración de errores en el ejecutable puede ser más difícil
===== Instalación =====
pip install pyinstaller
Pero en Arch Linux es a través del paquete ''pyinstaller''.
===== Uso =====
==== Desde Linux para Linux ====
pyinstaller miapp.py
La aplicación quedará "empaquetada" en el directorio ''folder''.