【问题标题】:How to create Linux and MacOS executables using PyInstaller on Windows?如何在 Windows 上使用 PyInstaller 创建 Linux 和 MacOS 可执行文件?
【发布时间】:2020-08-04 11:27:46
【问题描述】:
我用 Pyinstaller 用 python 代码为 windows 制作了一个独立的可移植应用程序,它可以正常工作。
我了解要为某个操作系统创建可执行文件,必须在该特定操作系统上完成。
有没有办法在不运行虚拟机的情况下直接从 Windows 为其他平台创建可执行文件。
谢谢。
【问题讨论】:
标签:
python
pyinstaller
executable
【解决方案1】:
由于 pyinstaller 不是交叉编译器(这意味着使用 pyinstaller,您无法为除您所在的系统之外的任何其他系统创建可执行文件),您将不得不寻找其他工具。
在官方 github 常见问题解答中,他们建议为此特定目的使用 Wine。
链接到FAQ。
由于您不想寻找其他系统来编译您的代码,这似乎是唯一的选择。
【解决方案2】:
为了制作 Mac 和 Linux 的可执行文件,您需要在相同的系统上构建它
例如,为了让你的 Linux 工作,你需要收集 rpm 包
【解决方案4】:
如果您有 docker-expertise,您可以尝试在以下链接中获取 docker-containers 来为您完成这项工作(通过为每个目标系统设置 docker-container 来为 windows/linux 创建可执行文件)并启动 Docker-Containers 以从您的 Windows-OS 中构建可执行文件。虽然我还没有尝试过,但该项目的自述文件听起来很有希望。
https://github.com/cdrx/docker-pyinstaller
如果项目按照它说的做,你只需要在你的项目文件夹中执行以下两个命令来创建适用于 Windows 和 Linux 的可执行文件,当你完成所有设置后:
docker run -v "$(pwd):/src/" cdrx/pyinstaller-windows
docker run -v "$(pwd):/src/" cdrx/pyinstaller-linux