script programa mundo hola ejecutar desde cómo consola compilar archivos archivo python windows linux py2exe cross-compiling

programa - Compilación cruzada de una secuencia de comandos de Python en Linux en un ejecutable de Windows



ejecutar script python en windows (4)

¿ PyInstaller ?

Parece que 1.4 admite la compilación cruzada

http://www.pyinstaller.org/browser/tags/1.4/doc/CHANGES.txt dice:

Agregue soporte para compilación cruzada: PyInstaller ahora puede construir ejecutables de Windows cuando se ejecuta bajo Linux. Ver documentación para más detalles.

No lo intenté yo mismo.

Espero que ayude

Tengo un script de Python que me gustaría compilar en un ejecutable de Windows. Ahora, py2exe funciona bien desde Windows, pero me gustaría poder ejecutar esto desde Linux. Tengo Windows en mi máquina de desarrollo, pero Linux es mi principal plataforma de desarrollo y me estoy cansando de reiniciar en Windows solo para crear el .exe . Tampoco quiero tener que comprar una segunda licencia de Windows para ejecutar en una máquina virtual como VirtualBox. ¿Algunas ideas?

PD: soy consciente de que py2exe no compila exactamente el archivo python tanto como lo hace con el intérprete de Python. Pero de cualquier manera, el resultado es que no necesita Python instalado para ejecutar el script.


Como se menciona en otros contestadores, la característica de compilación cruzada se elimina de PyInstaller desde 1.5 . Aquí, muestra cómo empacar un ejecutable de Windows a partir de scripts Python usando PyInstaller en wine .

Paso 1: instala 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 nuevas de Python ya incluyen pip (se usa para instalar el pyinstaller ). Descargue el paquete de instalación de Python desde here (p. Ej., python-2.7.10.msi )

Paso 2: instala PyInstaller en el vino

$ cd ~/.wine/drive_c/Python27 $ wine python.exe Scripts/pip.exe install pyinstaller Successfully installed pyinstaller-3.1.1 pypiwin32-219

Paso 3: Empaquetar scripts de Python

pyinstaller scripts de Python (p. Ej., 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 here para la descripción detallada.


He probado py2exe dentro del vino, y funciona. Necesitarás instalar Python en Wine para que funcione, o si solo usas la libarary estándar, puedes agrupar py2exe con py2exe de la máquina de Windows y luego usarlo en wine. Solo tenga en cuenta que necesita la misma versión de las bibliotecas ms visuales de C en vino que se utilizaron para compilar Python o las cosas no funcionarán correctamente.


Puede ejecutar Windows en VirtualBox para ejecutar py2exe. VBox ofrece un poderoso cliente de línea de comandos para automatizar tareas, por lo que es algo que probablemente pueda integrar en su proceso de desarrollo con facilidad.