跳转到主要内容

ubuntu23.04+ pip install 报错

背景

在Ubuntu23.04 之后的系统中,使用pip/pip3 install 安装库时,会收到一个错误提示:error: externally-managed-environment,即“外部管理环境错误”,这是新版python的feature,此功能的目的是避免操作 系统包管理器(pacman,yum,apt)和pip等特定python的包管理工具之间的冲突。 官方介绍PEP 668 – Python base environments

解决方案

方案一、 去掉提示(不推荐)

强制删掉该提示,注意对应的python版本

sudo mv /usr/lib/python3.x/EXTERNALLY-MANAGED /usr/lib/python3.x/EXTERNALLY-MANAGED.bk

方案二、使用pipx(推荐)

建议安装第三方工具时,使用该方案: 因为install时,会自动根据packagename创建一个虚拟环境,如果需要其他的包时,需要使用inject向其中添加依赖包,不如直接使用venv. 首先安装pipx

apt install pipx
pipx ensurepath

安装工具:

pipx install package_name

方案三、使用venv(推荐)

开发脚本过程中,安装第三方依赖建议使用这种方案

mkdir -p $HOME/.env && python3 -m venv $HOME/.env/project_name

激活虚拟环境:

source /root/.env/project_name/bin/activate

激活之后,即可正常使用pip3/pip 安装依赖包

pip3 install package_name