GNU/Linux >> Tutoriales Linux >  >> Linux

Empaquetado de un script de Python en Linux en un ejecutable de Windows

Como mencionaron otros respondedores, la función de compilación cruzada se elimina de PyInstaller desde 1.5 . Aquí, muestre cómo empaquetar un ejecutable de Windows desde secuencias de comandos de Python utilizando PyInstaller en Wine.

Paso 1:Instalar Wine y Python

sudo apt-get install wine
wine msiexec /i python-2.7.10.msi /L*v log.txt

PD:

  • Las versiones más recientes de Python ya incluyen pip (se usa para instalar pyinstaller ). Descargue el paquete de instalación de Python desde aquí (por ejemplo, python-2.7.10.msi )

  • Para usuarios de macos, use brew cask install xquartz wine-stable .

Paso 2:Instale PyInstaller en Wine

$ cd ~/.wine/drive_c/Python27
$ wine python.exe Scripts/pip.exe install pyinstaller

Successfully installed pyinstaller-3.1.1 pypiwin32-219

Paso 3:Paquete de secuencias de comandos de Python

Paquete de secuencias de comandos de Python (por ejemplo, HelloWorld.py ) con pyinstaller .

$ wine ~/.wine/drive_c/Python27/Scripts/pyinstaller.exe --onefile HelloWorld.py

# filename: HelloWorld.py

#!/usr/bin/env python
# -*- coding: utf-8 -*-

print('Hello World!')

El archivo ejecutable de Windows se encuentra en dist/ .

$ wine dist/HelloWorld.exe 
Hello World!
fixme:msvcrt:__clean_type_info_names_internal (0x1e24e5b8) stub

Consulte aquí para obtener una descripción detallada.


¿Miraste PyInstaller?

Parece que las versiones hasta la 1.4 admiten la compilación cruzada (la compatibilidad se eliminó en 1.5+). Consulte esta respuesta para saber cómo hacerlo con PyInstaller 1.5+ en Wine.

La documentación dice:

Agregue soporte para compilación cruzada:PyInstaller ahora puede compilar ejecutables de Windows cuando se ejecuta en Linux. Consulte la documentación para obtener más detalles.

No lo probé yo mismo.

Espero que ayude


Linux
  1. Instalación de PIP, la herramienta de empaquetado de Python en RHEL 7 Linux

  2. Cómo hacer que un script de Python se ejecute como un servicio o demonio en Linux

  3. Script PHP:¿detecta si se ejecuta en Linux o Windows?

  4. Herramientas de Linux para inspeccionar archivos DLL de Windows

  5. ¿Cómo salir de la terminal de Linux usando el script de Python?

Cómo comprobar la versión de Python en Linux, Mac y Windows

Formas de desarrollar aplicaciones de Windows en Linux

Cómo ejecutar aplicaciones y juegos de Windows en Linux usando Wine

Cómo SSH en su servidor Linux desde Windows

Cómo SSH en una máquina con Windows 10 desde Linux O Windows O en cualquier lugar

Seguridad de Linux frente a Windows