我有一个包含 python 库和资源的目录(例如,使用具有不同参数的 subprocess
模块 fork 的 unix 可执行脚本) - 总共 10-12 个文件 .py + 可执行文件。其中之一包括其余部分,并且是他们作为整体制作的命令行工具的接口(interface)(当前以 #!/usr/bin/env python 开头并直接执行)。
是否可以使它们成为在使用它们的机器上编译的单个可执行文件,以便于运输(我将创建一个可以处理它的 make 文件)?
我找到了 py2exe,但那是针对 Windows 可执行文件的。欢迎提出任何建议。
最佳答案
有 pyinstaller(适用于 Linux、Windows 和 Mac),您可以尝试: http://www.pyinstaller.org
下载当前版本(2.0)并解压后,考虑到您位于 pyinstaller 的路径中,您可以通过这种方式编译一组 *.py 文件:
>>> python pyinstaller.py [opts] path_to_yourprogram.py
如果您想要单个文件,可以使用:
>>> python pyinstaller.py --onefile path_to_yourprogram.py
在“path_to_yourprogram.py”中,您必须输入包含其他内容的Python程序的路径。
就是这样! pyinstaller 会将您的 *.py 文件编译为单个可执行文件(但由于您有一些附加资源,例如其他可执行文件,我认为您还必须将这些附加资源与 pyinstaller 生成的主可执行文件一起分发)。
关于python - 将一些 python 脚本打包为 Linux 的可执行文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15025474/