从 python 源构建 Windows 可执行文件

Posted

技术标签:

【中文标题】从 python 源构建 Windows 可执行文件【英文标题】:Building a Windows executable from python source 【发布时间】:2012-07-23 13:12:11 【问题描述】:

我们有一个 Py 模块,我们想以 Windows 可执行文件的形式提供给用户。是否有一个经过验证的好工具可以将 py 模块打包到 Windows exe 中?

【问题讨论】:

@mgilson,您应该将其作为答案而不是评论。 请注意,没有将 Python 编译为不透明字节或机器代码的解决方案,实际上,只有能够让您分发一键运行 Python 程序的工具。跨度> @mgilson 我们做了,但它目前依赖于/为 py2.6 构建,我们的开发环境设置为 py 2.7 @sr2222 这正是我们正在寻找的。不是在寻找编译器,而是为没有 py 的机器寻找“独立”可执行文件。 @Duncan -- 我没有足够的信心回答这个问题,因为我自己从未使用过 py2exe。我刚刚看到它被引用了很多次。 【参考方案1】:

作为py2exe 的替代方案,如果您运行的是3.x 版本的Python,您可以使用cx_freeze (http://cx-freeze.sourceforge.net/)。它不会将程序打包到单个可执行文件中,但您可以将它生成的所有文件打包到自解压存档中以进行部署。详情请见https://***.com/a/11511735/369977。

【讨论】:

【参考方案2】:

您可以使用 Python 扩展 py2exe。

在 Python 中你可以使用代码:

from distutils.core import setup
import py2exe

setup(console=['test.py'])

制作可执行的test.exe

【讨论】:

是的,我迟到了几秒钟。我看到我们用谷歌搜索了相同的代码:) 我只是直接从他们的网站上偷了教程 这里也一样。我不明白为什么@Syrahn 在询问之前没有谷歌它。这是搜索引擎上出现的第一件事。 @Gunnar 在问之前我已经谷歌了。不要妄下结论。首先,该项目似乎自 2008 年以来已被放弃,其次它仅与 Py 2.6 兼容 @Syrahn,真的吗?在SourceForge 中有一个适用于 Python 2.7 的 py2exe 包。【参考方案3】:
from distutils.core import setup
import py2exe

setup(console=['hello.py'])

只要您安装了py2exe,它就会将hello.py 编译为一个exe,(它实际上只是将stdlib 和解释器捆绑到一个可执行文件中。)

【讨论】:

以上是关于从 python 源构建 Windows 可执行文件的主要内容,如果未能解决你的问题,请参考以下文章

从 python 代码为 Windows 创建独立的可执行文件

Windows下将Python源代码.py文件封装成exe可执行文件方法

具有自动生成源的 Cmake 可执行文件

我们如何使用WPF / C#可执行文件调试DLL(使用本机C / C ++的bulit)源?

Jenkins可持续集成Python自动化脚本(Windows版)

从 Python 项目创建单个可执行文件