You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PyInstaller打包exe后跨设备运行出现python310.dll冲突错误求助

PyInstaller打包exe后运行报错:python310.dll版本冲突解决方法

错误信息

Traceback (most recent call last):
  File "C:\Users\lenovo\AppData\Local\Temp\_MEI144842\test_suite.py", line 3, in <module>
    import asyncio
  File "C:\Users\lenovo\AppData\Local\Programs\Python\Python38\lib\asyncio\__init__.py", line 8, in <module>
    from .base_events import *
  File "C:\Users\lenovo\AppData\Local\Programs\Python\Python38\lib\asyncio\base_events.py", line 23, in <module>
    import socket
  File "C:\Users\lenovo\AppData\Local\Programs\Python\Python38\lib\socket.py", line 49, in <module>
    import _socket
ImportError: Module use of python310.dll conflicts with this version of Python.

解决方法

  • 使用干净的虚拟环境打包
    系统多Python版本共存易导致依赖污染,用目标版本(Python3.8)创建独立虚拟环境:

    1. 创建虚拟环境:python3.8 -m venv py38_env(Windows下若默认Python为3.8,直接执行python -m venv py38_env)
    2. 激活虚拟环境:Windows执行py38_env\Scripts\activate,Linux/macOS执行source py38_env/bin/activate
    3. 重新安装所有依赖及PyInstaller:pip install pyinstaller 你的其他依赖包,或用pip install -r requirements.txt批量安装
  • 清理PyInstaller缓存
    旧打包缓存可能混入高版本文件,彻底清理后重新打包:

    1. 删除生成的build、dist文件夹
    2. 删除自动生成的test_suite.spec文件
    3. 重新执行打包命令:pyinstaller --onefile test_suite.py
  • 排查环境变量
    确保打包时系统PATH中仅包含Python3.8的路径,移除Python3.10的路径,避免PyInstaller调用错误版本的Python

  • 指定PyInstaller路径打包
    若环境变量配置无效,直接使用Python3.8对应的PyInstaller路径执行打包:

    C:\Users\lenovo\AppData\Local\Programs\Python\Python38\Scripts\pyinstaller.exe --onefile test_suite.py
    

内容的提问来源于stack exchange,提问作者Saad Abdullah

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.20 16:12:46