PyInstaller打包的.exe命令行可运行,双击无法启动
PyInstaller打包exe仅Anaconda环境可运行,普通环境无输出的解决方案
问题场景
使用PyInstaller命令打包Python脚本:
pyinstaller --onefile --add-binary C:\ProgramData\Anaconda3\Library\bin\mkl_intel_thread.1.dll;. unitTracker.py
生成的exe文件仅能在Anaconda命令行窗口正常运行,双击启动或通过普通CMD窗口运行时,无任何输出,甚至脚本开头的print语句都无法执行。
排查过程
- 移除
--onefile参数重新打包,问题依旧 - 尝试通过bat文件启动以保留命令行窗口,未解决无输出问题
- 确认问题与Anaconda环境强绑定:exe仅能在打包时的Anaconda环境中运行,普通Windows环境无法正常执行
- 进一步定位到核心问题:exe运行时缺失
lxml.etree模块;尝试添加--collect-submodules lxml参数打包,无效
最终解决方法
在打包所用的Anaconda环境中重新安装lxml模块,之后重新执行PyInstaller打包命令,生成的exe即可在普通环境正常运行。
内容的提问来源于stack exchange,提问作者Llaves
相关产品推荐
相关产品推荐

