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

Ubuntu22.04下Python3.9虚拟环境安装依赖时distutils.cmd缺失求助

解决Python3.9虚拟环境中distutils.cmd缺失问题

问题现象

使用PyCharm创建Python3.9虚拟环境后,执行依赖安装时出现以下错误:

Error: Traceback (most recent call last):
  File "/snap/pycharm-professional/401/plugins/python/helpers/packaging_tool.py", line 85, in run_pip
    runpy.run_module(module_name, run_name='__main__', alter_sys=True)
  File "/usr/lib/python3.9/runpy.py", line 210, in run_module
    return _run_module_code(code, init_globals, run_name, mod_spec)
  File "/usr/lib/python3.9/runpy.py", line 97, in _run_module_code
    _run_code(code, mod_globals, init_globals,
  File "/usr/lib/python3.9/runpy.py", line 87, in _run_code
    exec(code, run_globals)
  File "/home/my_user/Documents/my_project/venv/lib/python3.9/site-packages/pip/__main__.py", line 22, in <module>
    from pip._internal.cli.main import main as _main
  File "/home/my_user/Documents/my_project/venv/lib/python3.9/site-packages/pip/_internal/cli/main.py", line 10, in <module>
    from pip._internal.cli.autocompletion import autocomplete
  File "/home/my_user/Documents/my_project/venv/lib/python3.9/site-packages/pip/_internal/cli/autocompletion.py", line 10, in <module>
    from pip._internal.cli.main_parser import create_main_parser
  File "/home/my_user/Documents/my_project/venv/lib/python3.9/site-packages/pip/_internal/cli/main_parser.py", line 9, in <module>
    from pip._internal.build_env import get_runnable_pip
  File "/home/my_user/Documents/my_project/venv/lib/python3.9/site-packages/pip/_internal/build_env.py", line 19, in <module>
    from pip._internal.cli.spinners import open_spinner
  File "/home/my_user/Documents/my_project/venv/lib/python3.9/site-packages/pip/_internal/cli/spinners.py", line 9, in <module>
    from pip._internal.utils.logging import get_indentation
  File "/home/my_user/Documents/my_project/venv/lib/python3.9/site-packages/pip/_internal/utils/logging.py", line 29, in <module>
    from pip._internal.utils.misc import ensure_dir
  File "/home/my_user/Documents/my_project/venv/lib/python3.9/site-packages/pip/_internal/utils/misc.py", line 41, in <module>
    from pip._internal.locations import get_major_minor_version
  File "/home/my_user/Documents/my_project/venv/lib/python3.9/site-packages/pip/_internal/locations/__init__.py", line 66, in <module>
    from . import _distutils
  File "/home/my_user/Documents/my_project/venv/lib/python3.9/site-packages/pip/_internal/locations/_distutils.py", line 20, in <module>
    from distutils.cmd import Command as DistutilsCommand
ModuleNotFoundError: No module named 'distutils.cmd'

尝试执行sudo apt install python3.9-distutils安装时,出现包找不到的错误:

E: Unable to locate package python3.9-distutils
E: Couldn't find any package by glob 'python3.9-distutils'

解决方案

Ubuntu官方软件源通常不包含旧版本Python的distutils扩展包,需要通过第三方PPA源获取:

  1. 添加deadsnakes PPA源(该源提供全版本的Python官方包):

    sudo add-apt-repository ppa:deadsnakes/ppa
    
  2. 更新本地软件源缓存:

    sudo apt update
    
  3. 重新安装python3.9-distutils:

    sudo apt install python3.9-distutils
    
  4. 激活虚拟环境后,重新执行依赖安装:

    source /home/my_user/Documents/my_project/venv/bin/activate
    pip install -r requirements.txt
    

如果上述方法无效,可尝试手动修复虚拟环境的pip:

  • 先卸载虚拟环境中的pip:pip uninstall -y pip
  • 从官方脚本重新安装pip:curl https://bootstrap.pypa.io/get-pip.py | python3.9

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.20 05:30:17