Windows系统下PyInstaller命令无法识别、执行报错问题求助
PyInstaller打包可执行文件报错解决方法
问题表现
安装PyInstaller后执行打包命令,首先触发命令无法识别报错:
'pyinstaller' is not recognized as an internal or external command, operable program or batch file.
先后尝试将Python Scripts目录加入系统Path、重装PyInstaller、手动复制pyinstaller.exe和pyinstaller-script.py到项目目录三种方案,前两种无效果,第三种触发新的进程创建失败报错:
Unable to create process using 'D:\Projects\FSS\python.exe "D:\Projects\FSS\FSS Mini PC Application\pyinstaller-script.py" --onefile -w Main.py'
修复步骤
按顺序操作,每完成一步就开全新的命令行窗口测试(旧窗口不会加载新的配置,测了也白测):
- 首先删掉你之前复制到项目目录下的
pyinstaller.exe和pyinstaller-script.py,pip安装生成的pyinstaller.exe里硬编码了对应Python环境和启动脚本的路径,手动挪动后就彻底失效,留着反而干扰后续操作。 - 直接绕开环境变量配置,用Python模块调用的方式启动PyInstaller,这是成功率最高的方案,不会碰到任何命令找不到的问题。进入你的项目目录后执行:
如果电脑装了多个Python版本,就把命令开头的python -m PyInstaller --onefile -w Main.pypython替换成你当前项目用的python.exe的完整路径,比如你的Python在D:\Projects\FSS\python.exe,就执行:D:\Projects\FSS\python.exe -m PyInstaller --onefile -w Main.py - 如果执行上面的命令提示
No module named PyInstaller,说明你之前把PyInstaller装到了别的Python环境里,直接执行对应Python的pip安装命令即可:
安装完成后再重新执行上一步的打包命令就行,全程不需要改任何环境变量。D:\Projects\FSS\python.exe -m pip install pyinstaller - 如果你坚持要直接输入
pyinstaller调用命令,再核对环境变量配置:你需要加入Path的路径是当前使用的Python安装目录下的Scripts文件夹,比如Python路径是D:\Projects\FSS\python.exe,对应要加的路径就是D:\Projects\FSS\Scripts。加完之后必须完全关闭所有已打开的命令行、PowerShell窗口,重新打开新窗口才会加载新的Path配置。 - 额外注意:建议把项目文件夹名称里的空格去掉,比如把
FSS Mini PC Application改成FSS_Mini_PC_Application,Windows下路径带空格很容易触发命令行参数解析错误,就算这次打包命令跑通,后续也可能碰到各种路径相关的奇怪问题。
内容的提问来源于stack exchange,提问作者Mobi Zaman
相关产品推荐
相关产品推荐

