windows 下 pyinstaller distutils not included with latest virtualenv (16.4.0)

Posted flywuya

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了windows 下 pyinstaller distutils not included with latest virtualenv (16.4.0)相关的知识,希望对你有一定的参考价值。

起因

因为windows下python3.7.2内置venv虚拟环境下pyinstaller错误问题,切换virtualenv但是发现最新版本又有其他问题 - -!

ModuleNotFoundError: No module named 'distutils'
[10373] Failed to execute script <name here>

排查

  1. 肯定不是源码问题,迁出代码前没有问题
  2. 可能又是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目录重新生成就可以了。或等官方新版本解决

以上是关于windows 下 pyinstaller distutils not included with latest virtualenv (16.4.0)的主要内容,如果未能解决你的问题,请参考以下文章

python打包pyinstaller支持window和linux下使用

windows 下 pyinstaller distutils not included with latest virtualenv (16.4.0)

windows下pyinstaller打包踩坑记录

Python学习使用Pyinstaller将py文件导出为exe文件

pyinstaller 工具起步

pyinstaller---将py文件打包成exe