【踩坑实录】PyInstaller 打包 “找不到库的完整解决方案

记录一次真实踩坑:

PyInstaller 打包 PyQt6 程序时,反复报错

ModuleNotFoundError / No module named PyInstaller

最终发现 不是 PyQt6 的问题,而是 Python 环境混乱

一、问题背景

我在使用 PyInstaller 打包一个 PyQt6 GUI 程序:

bash 复制代码
pyinstaller -F -w main.py

运行打包出来的exe后报错:

bash 复制代码
Traceback (most recent call last):
  File "main.py", line 5, in <module>
ModuleNotFoundError: No module named 'PyQt6'

👉 明明安装过编译器运行正常,为什么缺少模块呢?

尝试改用:

bash 复制代码
python -m PyInstaller -F -w main.py

结果又报了一个更离谱的错:

bash 复制代码
python.exe: No module named PyInstaller

此时非常容易陷入困惑:

👉 明明 PyInstaller 安装过,为什么 Python 说找不到?


二、核心原因总结

PyInstaller / PyQt6 没有安装在当前使用的 Python 解释器里

这是一个典型的 Python 多环境 + pip 指向不一致问题。

三、先搞清楚:你到底在用哪个 Python?

bash 复制代码
where python
where pyinstaller

你很可能会看到类似:

bash 复制代码
C:\Python311\python.exe
C:\Users\xxx\AppData\Roaming\Python\Python39\Scripts\pyinstaller.exe

这意味着:

  • python 👉 Python 3.11
  • pyinstaller 👉 Python 3.9
    ❌ 根本不是同一个环境

四、正确姿势:永远用 python -m

1️⃣ 用当前 python 安装 PyInstaller

bash 复制代码
python -m pip install pyinstaller

(国内网络可用)

bash 复制代码
python -m pip install pyinstaller -i https://pypi.tuna.tsinghua.edu.cn/simple

2️⃣ 验证 PyInstaller 是否真的装成功

bash 复制代码
python -m PyInstaller --version

如果能看到版本号,说明 环境终于统一了


3️⃣ 再执行打包

bash 复制代码
python -m PyInstaller -F -w main.py

到这里,

❌ No module named PyInstaller

❌ 找不到 PyInstaller

都会彻底消失

五、结语

这个问题看似是:

PyInstaller 找不到库

实际上是:

Python 环境混乱 + 工具链不统一

记住一句话就够了 👇

永远用 python -m pip 和 python -m PyInstaller

希望这篇踩坑记录能帮你少走几个小时弯路。

相关推荐
喵手9 分钟前
Python爬虫实战:公共自行车站点智能采集系统 - 从零构建生产级爬虫的完整实战(附CSV导出 + SQLite持久化存储)!
爬虫·python·爬虫实战·零基础python爬虫教学·采集公共自行车站点·公共自行车站点智能采集系统·采集公共自行车站点导出csv
喵手16 分钟前
Python爬虫实战:地图 POI + 行政区反查实战 - 商圈热力数据准备完整方案(附CSV导出 + SQLite持久化存储)!
爬虫·python·爬虫实战·零基础python爬虫教学·地区poi·行政区反查·商圈热力数据采集
熊猫_豆豆22 分钟前
YOLOP车道检测
人工智能·python·算法
nimadan1223 分钟前
**热门短剧小说扫榜工具2025推荐,精准捕捉爆款趋势与流量
人工智能·python
默默前行的虫虫28 分钟前
MQTT.fx实际操作
python
YMWM_37 分钟前
python3继承使用
开发语言·python
JMchen12338 分钟前
AI编程与软件工程的学科融合:构建新一代智能驱动开发方法学
驱动开发·python·软件工程·ai编程
亓才孓1 小时前
[Class类的应用]反射的理解
开发语言·python
小镇敲码人1 小时前
深入剖析华为CANN框架下的Ops-CV仓库:从入门到实战指南
c++·python·华为·cann
摘星编程2 小时前
深入理解CANN ops-nn BatchNormalization算子:训练加速的关键技术
python