- pyinstaller将python编译成可执行文件后,直接执行可执行文件出现的错误如下:
- ImportError: No module named skimage.io
- ModuleNotFoundError: No module named 'pywt._extensions._cwt'
- ImportError: No module named google.protobuf.internal
- 然后重新编译,将这些报错的都加入--hidden-import中,再生成可执行文件,执行便不会出现上述错误。
pyinstaller -F test.py -p tools -p common --hidden-import skimage.io --hidden-import pywt._extensions._cwt --hidden-import google.protobuf.internal
- 但是又出现了一个新的错误ImportError: cannot import name enum_type_wrapper
参考:https://blog.csdn.net/swiftshow/article/details/8632755
解决方法:
1.下载protobuf的源码
2.修改setup.py文件168行添加一行代码
'google.protobuf.internal.enum_type_wrapper',
3.重新build,install
最终也没有解决问题,还是会出现这个错误,希望有解决的网友能够不吝赐教。