【问题标题】:cx_Freeze error: no commands suppliedcx_Freeze 错误:未提供命令
【发布时间】:2016-10-07 01:42:59
【问题描述】:

我正在尝试从我的 .py 文件创建一个可执行文件。

我这样做了:

import cx_Freeze

executables = [cx_Freeze.Executable("Cobra.py")]

cx_Freeze.setup(name="Snake Python", options={"build_exe":{"packages":["pygame","time","sys","os","random"]}}, executables = executables)

并从 Python GUI 运行。它返回以下错误:

Traceback (most recent call last):
  File "C:/Users/victor/Desktop/tcc/Jogo_Cobra/setup.py", line 5, in <module>
    cx_Freeze.setup(name="Snake Python", options={"build_exe":{"packages":["pygame","time","sys","os","random"]}}, executables = executables)
  File "C:\Python32\lib\site-packages\cx_Freeze\dist.py", line 365, in setup
    distutils.core.setup(**attrs)
  File "C:\Python32\lib\distutils\core.py", line 137, in setup
    raise SystemExit(gen_usage(dist.script_name) + "\nerror: %s" % msg)
SystemExit: usage: setup.py [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
   or: setup.py --help [cmd1 cmd2 ...]
   or: setup.py --help-commands
   or: setup.py cmd --help
error: no commands supplies

我在 windows 8.1 和 cx_Freeze-4.3.2.win32-py3.2 上使用 Python 3.2

感谢您的帮助!

【问题讨论】:

    标签: python cx-freeze


    【解决方案1】:

    如果您不想通过命令行提供命令,您可以让脚本为您执行此操作。

    把它放在你的代码中cx_Freeze.setup之前,你可以不用自己加参数来运行它:

    import sys
    sys.argv.append("build")
    

    这与像这样运行文件相同:

    python setup.py build
    

    【讨论】:

      【解决方案2】:

      您实际上需要将命令传递给setup.py 以告诉它构建可执行文件

      python setup.py build
      

      此命令将创建一个名为 build 的子目录,其中还有一个以字母 exe. 开头并以 distutils 使用的平台的典型标识符结尾的子目录

      或者,您可以让它构建可执行文件并将其包装在安装程序中以便于分发

      python setup.py bdist_msi
      

      【讨论】:

        猜你喜欢
        • 2021-09-16
        • 2016-02-27
        • 2021-12-11
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-01-18
        • 2021-03-12
        相关资源
        最近更新 更多