python - 将一些 python 脚本打包为 Linux 的可执行文件

标签 python py2exe

我有一个包含 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/

相关文章:

python - 正则表达式-特定字符串与其中任意两位整数的匹配?

python - 创建一个不需要 pythonXX.dll 的独立 windows exe

python - 为 Tk().iconbitmap() 使用类似对象的文件

python - 带有图标的 py2exe setup.py

python - 在条件下合并来自两个不同数据帧的两列,python

python 2.7 : Thread local storage's instantiation when first accessed?

python - 我怎样才能重构这两个功能更干?

python - “模块”对象没有属性 'Twitter'

python - Py2exe,tweepy 的运行时错误

windows - Py2Exe 应用程序被 Windows Defender 标记为恶意软件;该怎么办?