如何在linux中使用cx_freeze来创建一个在windows中使用的包

时间:2013-06-24 13:21:10

标签: linux python-3.x cx-freeze

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

例如:

$ cxfreeze gui.py

这是制作的文件:

gui

仅在linux中运行。

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

或者用其他方式代替cx_freeze使一个bin文件在其他平台上独立执行?

我使用python3(3.x)。

3 个答案:

答案 0 :(得分:9)

我一直试图让cx_freeze在各种可能的方式上正常运行,但没有运气......我正在尝试使用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后手动复制一些文件以使可执行文件正常工作。我们不建议使用此选项。 “ 我想唯一的选择是尝试用葡萄酒吗? 你有运气吗?

答案 1 :(得分: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编写一个更简洁,更简单的转换工具。

答案 2 :(得分:0)

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

  

cx_Freeze是跨平台的,应该适用于Python本身可以使用的任何平台

(虽然我没有在linux上试过)但你可以找到关于here的简单解释