Pyinstaller在Windows上导入错误:无法导入名称“dist”。

4

我正在尝试在Windows(版本8.1)上使用Pyinstaller(版本3.3)将Python项目(版本3.6)构建为单个exe文件。该项目包括PyQt5,numpy和matplotlib依赖项。Pyinstaller输出:

Building EXE from out00-exe.toc completed successfully.

但是当我运行exe文件时,我会遇到以下错误:
...
  File "distutils\__init__.py", line 44, in <module>
ImportError: cannot import name 'dist'
[6748] Failed to execute script myproj

文件"distutils\__init__.py"在第44行包含以下导入:

from distutils import dist, sysconfig  # isort:skip

这个项目可以在Ubuntu上轻松构建,并且运行良好。我尝试添加了隐藏的导入:

'distutils',
'distutils.dist',
'dist',

这并没有起到帮助的作用。

为什么会在Windows上出现这个错误,如何修复它?

1个回答

1
当我试图在Windows 7 64位上构建一个Django项目(不是PyQT)时,我遇到了相同的错误信息。我使用了PyInstaller 3.4。在我的情况下,通过降级到Python 3.5(我创建了一个新的anaconda环境,使用其他Python版本),问题消失了,然后它开始工作。我不知道它是否适用于您,但对我有效。

谢谢您分享您的经验。我仔细尝试了,但是对我没有用......我得到了与问题中提到的相同的错误。 - Fomalhaut
这里有什么新的见解吗?@Ralf,你具体使用的是哪个Python版本?我尝试了3.5.4但是得到了相同的错误。 - Cappo

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接