在Linux上,如何交叉编译 python 脚本到 Windows 可执行文件中

分享于 

2分钟阅读

Python

  繁體

使用 wine 和 Pyinstaller 。

Pyinstaller在最常用的操作系统 下,程序独立执行可以执行程序( Windows, Linux, Mac OS X, FreeBSD, AIX。
最初 Pyinstaller 允许在Linux下交叉编译 Windows 可执行文件。
但是,由于不稳定,它从 1.5版本之后被删除。

幸好,还可以使用以下方法打包 Windows 可执行文件

1.安装 wine 和 python


$ sudo apt-get install wine
$ wget https://www.python.org/ftp/python/2.7.9/python-2.7.9.amd64.msi
$ wine msiexec/i python-2.7.9.amd64.msi/qb


如果需要编译 32bit 可执行文件,则需要安装 wine32:


sudo dpkg --add-architecture i386 && sudo apt-get update && sudo apt-get install wine32


2.在 wine 上安装 PyInstaller


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



3 。打包 python 脚本

软件包 python 脚本( 比如 。 helloworld.py )


$ cat helloworld.py
#!/usr/bin/env python
print('Hello World!')

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


Windows 可执行文件位于 dist/


$ wine dist/helloworld.exe
Hello World!

最后,在 Windows 框中传输可执行文件并进行测试:


引用


COM  Window  Windows  EXE  EXEC  可执行  
相关文章