[Python] Empaquetado y lanzamiento del proyecto Python (5) (haciendo el paquete de instalación de Windows)

Resumen de la versión del paquete del proyecto de Python

【Python】Lanzamiento del paquete del proyecto Python (1) (basado en el proyecto multidirectorio del paquete Pyinstaller)
[Python] Lanzamiento del paquete del proyecto Python (2) (basado en el proyecto PyWebIO del paquete Pyinstaller) [Python] Lanzamiento del paquete del proyecto Python (3) (basado en el proyecto del paquete multidirectorio Aardio) [Python] Lanzamiento del paquete del proyecto Python (4) (basado en el proyecto PySide6 del paquete Nuitka) [Python] Lanzamiento del paquete del proyecto Python (5) ( hacer el paquete de instalación
de
Windows
)

ilustrar

Existen muchas herramientas para hacer paquetes de instalación de Windows, entre las cuales las más conocidas son:

  • NSIS
  • WiX
  • InnoConfiguración
  • InstallShield
  • Instalador avanzado

Por ejemplo, Tarui viene con WiX y NSIS
inserte la descripción de la imagen aquí

1, NSIS

En el entorno de Python, hay una
dirección de github pynsist del kit de herramientas de código abierto: https://github.com/takluyver/pynsist

ilustrar

pynsist no compila ningún archivo de Python, sino que solo genera un acceso directo a la secuencia de comandos del archivo de Python, y el directorio de empaquetado incluirá todo el entorno de Python. La experiencia personal no es buena, no recomendable.

2、Configuración Inno

Inno Setup es un potente creador de instaladores gratuito. Tiene un lenguaje de secuencias de comandos fácil de usar para crear instaladores con una interfaz personalizada, opciones de instalación y acciones de secuencias de comandos.
¡Inno Setup funciona muy bien con nuitka! Recomendado como cadena de herramientas en el entorno de Python. Puede consultar la configuración del script de empaquetado de un clic nuitka_build.py que escribí en https://github.com/KmBase/Umi-OCR

Las principales funciones de este script son:

Nuitka genera archivos ejecutables, zipfile crea archivos portátiles e InnoSetup crea archivos de instalación. Si no necesita generar un archivo zip o crear un paquete de instalación. Puede comentar las declaraciones correspondientes de create_portable() y create_portable()

if __name__ == '__main__':
    build()
    create_portable()
    if SYSTEM == 'Windows':
       create_portable()

ilustrar

nuitka es una herramienta que puede convertir código Python a código C++ y compilarlo en archivos ejecutables o módulos de extensión. Puede mejorar significativamente la velocidad de carga y ejecución de los proyectos de python. Inno Setup es un software de creación de programas de instalación de Windows gratuito, un gadget de embalaje muy simple y práctico.

Pasos para el uso

1. Instalar dependencias del proyecto

pip install -r requirements.txt

2. Instalar nuitka

pip install -U nuitka

3. Instale Inno Setup
Dirección de descarga del sitio web oficial: https://jrsoftware.org/download.php/is.exe
Paquete de idioma chino: https://raw.githubusercontent.com/jrsoftware/issrc/main/Files/Languages/Unofficial/ChineseSimplified.isl
Guarde el paquete de idioma en el directorio de instalación de Inno Setup
inserte la descripción de la imagen aquí

4. Ejecutar el guión

python nuitka_build.py

5. Instalación

  • Genere el directorio de compilación, incluido el directorio de archivos del proceso de compilación nuitka (main.build), el directorio de archivos ejecutables (main.release), el script de instalación de Inno Setup (.iss)
    inserte la descripción de la imagen aquí

  • Abra el archivo .iss generado con Inno Setup o haga doble clic en el .iss para abrirlo. Haga clic en Ejecutar para generar el archivo de instalación.
    imagen

  • El directorio de lanzamiento contiene archivos comprimidos portátiles y archivos de instalación.
    inserte la descripción de la imagen aquí

  • Haga doble clic en el archivo de instalación, puede instalar Umi-OCR en la ubicación especificada
    inserte la descripción de la imagen aquí

6. Desinstale
Find Umi-OCR en el panel de control y desinstálelo
inserte la descripción de la imagen aquí

referencias:

https://www.cnblogs.com/chrisfang/p/17027553.html

Supongo que te gusta

Origin blog.csdn.net/qq_25262697/article/details/131627847
Recomendado
Clasificación