没有名为 kivy.tools.packaging.pyinstaller_hooks 的模块

Posted

技术标签:

【中文标题】没有名为 kivy.tools.packaging.pyinstaller_hooks 的模块【英文标题】:No module named kivy.tools.packaging.pyinstaller_hooks 【发布时间】:2013-11-27 19:28:28 【问题描述】:

我正在关注Kivy's Windows-packaging guide。 我在最后一步,building the spec,我收到以下错误:

ImportError: No module named kivy.tools.packaging.pyinstaller_hooks

我使用的是 Python 2.7.5、Kivy 1.7.2 for Windows 和 PyInstaller 2.1。 指南工作的所有先前步骤。 对于本指南,我正在打包我使用 Kivy 的 Pong game tutorial 制作的 Pong 游戏。 我在球只是弹跳的地方停止了教程,但从技术上讲,它是一个使用 Kivy 的工作程序,所以它应该足以练习打包。

我在 Kivy 支持区查看了this post,但没有帮助。 (该帖子中列出的丢失文件存在于我的 Kivy 下载中。)

我在哪里可以找到错误消息中的模块,以及如何告诉 PyInstaller 在哪里可以找到它?

【问题讨论】:

【参考方案1】:

如果您的操作系统是 Ubuntu,并且您通过 ppa-repository 安装了 kivy,您应该使用 sudo apt install kivy-tools

【讨论】:

【参考方案2】:

尝试将其添加到 .spec 文件的顶部:

import kivy

如果在您运行 pyinstaller 时产生错误,那么您可能没有正确设置环境。

具体来说,您可能正在使用来自 C:\Python\ 的 pyinstaller 而不是 C:\blah\Kivy\bin...

让这个工作最简单的方法是安装一个 MSYS shell,然后这样做:

. /c/blah/kivyenv.sh
pip install pyinstaller
pyinstaller main.spec

我只对默认终端(即非 MSYS)感到悲痛,所以如果你使用它,恐怕我不知道。

【讨论】:

是的,我使用的是默认终端。 :| 我尝试使用 . /c/blah/kivyenv.sh 它会说没有这样的文件或目录【参考方案3】:

在运行pyinstaller.py 之前运行kivy.bat 将修复错误。

这个批处理文件设置适当的路径,以便 pyinstaller 知道在哪里可以找到 Kivy。 此步骤在教程中列出;必须不遗漏任何步骤。

【讨论】:

【参考方案4】:

如果你的操作系统是ubuntu,去kivy git仓库

kivy tools/packaging

并将文件复制/粘贴到此目录

/usr/lib/python2.7/dist-packages/kivy/tools/packaging/

【讨论】:

以上是关于没有名为 kivy.tools.packaging.pyinstaller_hooks 的模块的主要内容,如果未能解决你的问题,请参考以下文章

RGBApixel' 没有名为...red blue and green 的成员

macOS 上的“ModuleNotFoundError:没有名为 'dbus' 的模块”

ModuleNotFoundError:没有名为“推理”的模块

为啥 ImportError:没有名为 lightgbm 的模块

导入错误,没有名为'jwt'的模块。没有名为 "jwt "的模块

ModuleNotFoundError:没有名为“dataviz”的模块