在 Mac 上使用 cx_Freeze 从 .py 创建 .exe
Posted
技术标签:
【中文标题】在 Mac 上使用 cx_Freeze 从 .py 创建 .exe【英文标题】:Creating a .exe from a .py using cx_Freeze on a Mac 【发布时间】:2017-01-19 21:02:48 【问题描述】:我正在尝试从 python 文件创建一个可以在 Windows 上运行的可执行文件。我正在使用 Mac 并尝试使用 cx_Freeze 执行此操作。我有一个文件夹,里面有 2 个文件:pyTest.py 和 setup.py。这是pyTest.py的内容:
import numpy as np
print(np.sqrt(2))
这里是 setup.py 的内容:
import sys
from cx_Freeze import setup, Executable
build_exe_options = "packages": ['numpy'],
"excludes": ['Tkinter', 'tcl', 'ttk']
base = None
if sys.platform == "win32":
base = "Win32GUI"
setup(name='test1',
version='0.1',
description='test',
options = "build_exe" : build_exe_options,
executables = [Executable('pyTest.py', base=base)])
当我运行终端python setup.py build
时,会创建一个名为“build”的文件夹,其中仅包含另一个名为“exe.macosx-10.6-intel-2.7”的文件夹,其中包含一个名为“lib”的文件夹 libncursesw.5, pyTest,Python。 pyTest 和 Python 都是 Unix 可执行文件。我正在使用第二台装有 Windows 10 的计算机,我试图用它来运行我试图制作的 .exe 文件。我尝试运行 pyTest 文件,但它不起作用。
【问题讨论】:
how to use cx_freeze in linux to create a package to be used in windows的可能重复 【参考方案1】:来自“链接”类别中的帖子:
" 冻结其他平台
cx_Freeze 在 Windows、Mac 和 Linux 上工作,但在每个平台上,它只生成一个在该平台上运行的可执行文件。因此,如果您想在 Windows 上冻结您的程序,请在 Windows 上冻结它;如果您想在 Mac 上运行它,请在 Mac 上冻结它。
在紧要关头,您可以尝试使用 Wine 制作 Windows 可执行文件。我们的经验是,您需要在 cx_Freeze 运行后手动复制一些文件以使可执行文件工作。我们不推荐此选项。 "
整个上午也一直在尝试,这有点令人失望。 也许我会使用 py2exe
【讨论】:
以上是关于在 Mac 上使用 cx_Freeze 从 .py 创建 .exe的主要内容,如果未能解决你的问题,请参考以下文章
使用 cx_Freeze 从 .py 构建一个 .exe 文件