Pyinstaller“无法执行脚本pyi_rth_pkgres”和丢失的包

新手上路,请多包涵

这是我第一次在这里发布问题,因为我的大部分问题已经被其他人回答了!我正在使用 python 开发 GUI 应用程序,并尝试使用 pyinstaller 将其打包到单个文件夹和 .exe 中以便于移植。目前,我正在使用 Windows 10 和 anaconda3 来管理我的 python 包。该应用程序依赖于 tkinter、pillow、numpy、scikit-learn、opencv、ffmpeg 和 matplotlib。该应用程序使用主 GUI.py 文件格式化,该文件创建许多其他文件的对象(其中许多文件存储在子文件夹中,因为此 GUI 正在取代具有相同目的的命令行实用程序)。我遇到的问题(如您在标题中所见)是 .exe 抛出错误块:

回溯(最近调用最后):文件“site-packages\PyInstaller\loader\rthooks\pyi_rth_pkgres.py”,第 11 行,在文件“c:\users\gurnben\anaconda3\envs\opencv\lib\site-packages\ PyInstaller\loader\pyimod03_importers.py”,第 389 行,在 load_module exec(bytecode, module.dict ) File “site-packages\setuptools-20.7.0-py3.5.egg\pkg_resourcesinit.py”,第 68 行,在文件中“site-packages\setuptools-20.7.0-py3.5.egg\pkg_resources\externinit.py”,第 60 行,在 load_module ImportError: The ‘packaging’ package is required;通常这是与这个包捆绑在一起的,所以如果你收到这个警告,请咨询你的发行版的包装商。无法执行脚本 pyi_rth_pkgres

当我查看 warn.txt 时,它给出了大量丢失的包,包括一些实际上位于单个文件夹包中的包的部分。

但是,我已经成功地让它识别出来自 opencv 的 dll 文件,并且它没有被列在丢失的文件中(ffmpeg 也没有,但是我没有在文件夹中看到任何 ffmpeg 文件)。我必须传入自定义路径以使其包含 opencv 文件,因为它们此时不在 anaconda 中。

对接下来的故障排除步骤有任何提示或想法吗?我非常感谢您提供的所有帮助,我可以上传任何代码、文件等,以帮助您诊断问题。与此同时,我将继续自己寻找解决方案!

原文由 gurnben 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1k
1 个回答

同样的问题:

  • 操作系统:Win10
  • 蟒蛇:3.7
    • pyinstaller 安装 pip install pyinstaller

修复(与上述解决方案相同,无需下载):

 pip uninstall pyinstaller
pip install https://github.com/pyinstaller/pyinstaller/archive/develop.zip

原文由 crifan 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题