首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Py2App找不到可用的tk.tcl

Py2App找不到可用的tk.tcl
EN

Stack Overflow用户
提问于 2017-07-05 17:03:03
回答 1查看 431关注 0票数 1

我正在尝试使用Tkinter GUI在py2app上创建一个OS X Python3应用程序。我已经在我的机器上将Python升级到v3.6.0,并安装了正确版本的ActiveTcl (v8.5.18.0)。我可以很好地开发和运行应用程序,我可以创建一个别名版本,它运行得很好,但当我创建并尝试运行独立版本时,我收到一个错误,说找不到tk.tcl

我已经在互联网上搜寻过,并在网上找到了其他丢失文件的较旧的参考资料,但我找不到任何解决方案来解决我的问题。我知道我的tk.tcl文件在哪里,但我不知道如何告诉它在哪里查找它,而且我也不知道为什么它在一个非标准的地方。

有人能帮我吗?

下面是完整的错误消息:

代码语言:javascript
运行
复制
Traceback (most recent call last):
  File "/Users/Ste/Documents/Programming/rf-library/src/test/dist/test.app/Contents/Resources/__boot__.py", line 81, in <module>
    _run()
  File "/Users/Ste/Documents/Programming/rf-library/src/test/dist/test.app/Contents/Resources/__boot__.py", line 66, in _run
    exec(compile(source, path, 'exec'), globals(), globals())
  File "/Users/Ste/Documents/Programming/rf-library/src/test/dist/test.app/Contents/Resources/test.py", line 10, in <module>
    gui = tk.Tk()
  File "tkinter/__init__.pyc", line 2017, in __init__
_tkinter.TclError: Can't find a usable tk.tcl in the following directories: 

/Library/Frameworks/Tcl.framework/Versions/8.5/Resources/Scripts/tk8.5
/Library/Frameworks/Tcl.framework/Versions/8.5/Resources/Scripts/tk8.5/Resources/Scripts
/Library/Frameworks/Tcl.framework/Versions/8.5/Resources/tk8.5
/Library/Frameworks/Tcl.framework/Versions/8.5/Resources/tk8.5/Resources/Scripts
/Users/Ste/Documents/Programming/rf-library/src/test/dist/test.app/Contents/lib/tk8.5
/Users/Ste/Documents/Programming/rf-library/src/test/dist/test.app/Contents/lib/tk8.5/Resources/Scripts
~/Library/Tcl/tk8.5 ~/Library/Tcl/tk8.5/Resources/Scripts /Library/Tcl/tk8.5
/Library/Tcl/tk8.5/Resources/Scripts
/System/Library/Tcl/tk8.5
/System/Library/Tcl/tk8.5/Resources/Scripts
~/Library/Frameworks/tk8.5
~/Library/Frameworks/tk8.5/Resources/Scripts
/Library/Frameworks/tk8.5
/Library/Frameworks/tk8.5/Resources/Scripts
/System/Library/Frameworks/tk8.5
/System/Library/Frameworks/tk8.5/Resources/Scripts
/Users/Ste/Documents/Programming/rf-library/src/test/dist/test.app/lib/tk8.5
/Users/Ste/Documents/Programming/rf-library/src/test/dist/test.app/Contents/library



This probably means that tk wasn't installed properly.

called Tcl_CreateHashEntry on deleted table
Abort trap: 6
EN

回答 1

Stack Overflow用户

发布于 2018-07-06 16:45:50

您使用的是什么版本的py2app?我也有同样的问题,但我能够通过降级到py2app 0.11来解决它。我使用的是Python 3.5.2 (这里发布的https://www.python.org/download/releases/3.5.2/)和ActiveTcl 8.5.18.0 (https://www.activestate.com/activetcl/downloads)。它就像一种护身符。

如果您使用pip,只需在终端中执行以下操作:

代码语言:javascript
运行
复制
$ pip3 uninstall py2app
$ pip3 install py2app==0.11

仅供参考,我最近升级了我的Python版本和一些东西(包括py2app)。我的印象是Python是罪魁祸首。所以我尝试了Python 3.7.0、3.6.6和3.5.4。我一直在使用py2app 0.12,没有想到问题可能出在py2app上。我还多次卸载并重新安装了ActiveTcl 8.5.18,我可以确认这不是问题所在。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44921613

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档