起因
因为windows下python3.7.2内置venv虚拟环境下pyinstaller错误问题,切换virtualenv但是发现最新版本又有其他问题 - -!
ModuleNotFoundError: No module named 'distutils'
[10373] Failed to execute script <name here>
排查
- 肯定不是源码问题,迁出代码前没有问题
- 可能又是virtualenv和pyinstaller的版本兼容问题
解决
直接搜索到了社区的解决方案
# work-around for https://github.com/pyinstaller/pyinstaller/issues/4064
import distutils
if distutils.distutils_path.endswith('__init__.py'):
distutils.distutils_path = os.path.dirname(distutils.distutils_path)
将以上代码贴入 *.spec文件开头,清理build目录重新生成就可以了。或等官方新版本解决