8

如何在 linux 中使用 cx_freeze 创建一个在 windows 中使用的包,如 .exe 或 .bin 文件。我在 linux 中测试了 cx_freeze,但是对于 linux 和 windows 的 make 包是未知的。

例如 :

$ cxfreeze gui.py

这是制作的文件:

gui

仅在linux中运行。

有没有办法使用 cx_freeze 制作 exe 或 bin 包?

或者任何替代方法而不是 cx_freeze 使一个 bin 文件在其他平台独立执行?

我使用python3(3.x)。

4

3 回答 3

10

我一直试图让 cx_freeze 以各种可能的方式在 Windows 上正常工作,但没有运气......我试图用 Ubuntu 做你现在正在做的事情,但遗憾的是我发现了这个: https://cx_freeze.readthedocs。 org/en/latest/faq.html#problems-with-running-frozen-programs

" 冻结其他平台

cx_Freeze 在 Windows、Mac 和 Linux 上工作,但在每个平台上它只生成一个在该平台上运行的可执行文件。因此,如果您想在 Windows 上冻结您的程序,请在 Windows 上冻结它;如果您想在 Mac 上运行它,请将其冻结在 Mac 上。

在紧要关头,您可以尝试使用 Wine 制作 Windows 可执行文件。我们的经验是,您需要在 cx_Freeze 运行后手动复制一些文件以使可执行文件工作。我们不推荐此选项。” 我想唯一的选择就是尝试用酒来做这件事?你有运气吗?

于 2013-07-02T22:31:05.160 回答
2

你看到这个了吗?也许这给您带来了麻烦:“Windows 上的 Python 需要 Microsoft Visual C++ Redistributable Package。Python 2.6-3.2 使用 2008 版本,并且由于它的安装方式,cx_Freeze 不会自动为您的应用程序复制它。”

http://cx-freeze.readthedocs.org/en/latest/faq.html#microsoft-visual-c-redistributable-package

无论如何,使用这个工具 (cx_freeze) 是如此复杂和低效,以至于编写整个程序可能比将其正确转换为 Windows 可执行文件更容易。我真的希望将来有人会为 Python 3 写一个更简洁简单的转换工具。

于 2013-11-12T12:04:57.520 回答
0

cx_freeze 应该如网站所述跨平台工作:

cx_Freeze 是跨平台的,应该可以在 Python 本身可以运行的任何平台上运行

(虽然我没有在 linux 中尝试过)但是你可以在这里找到一个简单的解释

于 2013-06-24T13:33:43.460 回答