当我使用cx_Freeze
时,在构建pygame程序时会得到一个键错误KeyError: 'TCL_Library'
。我为什么要买这个,怎么修?
我的setup.py如下:
from cx_Freeze import setup, Executable
setup(
name = "Snakes and Ladders",
version = "0.9",
author = "Adam",
author_email = "Omitted",
options = {"build_exe": {"packages":["pygame"],
"include_files": ["main.py", "squares.py",
"pictures/Base Dice.png", "pictures/Dice 1.png",
"pictures/Dice 2.png", "pictures/Dice 3.png",
"pictures/Dice 4.png", "pictures/Dice 5.png",
"pictures/Dice 6.png"]}},
executables = [Executable("run.py")],
)
把这个放在setup.py的设置之前
运行它:
这对我很有效。
可以通过手动设置环境变量来解决此错误:
也可以在
setup.py
脚本中执行此操作:但我发现实际上运行这个程序是行不通的。在cx_freeze mailinglist it was mentioned上:
但也许你有更多的运气。。。Here's the bug report。
与使用特定于安装的绝对路径(如
C:\\LOCAL_TO_PYTHON\\...
)设置环境变量不同,还可以使用Python标准包(如os
)的__file__
属性动态派生必要的路径:修复后,将创建可执行文件,但在尝试执行时可能会出现“DLL not found error”(DLL not found error),至少在Windows 10上使用Python 3.5.3和cx_Freeze 5.0.1。
当您添加以下选项时,所需的DLL文件将自动从Python安装目录复制到cx Freeze的生成输出,您应该能够运行Tcl/Tk应用程序:
相关问题 更多 >
编程相关推荐