当前位置: 首页 > news >正文

使用pip3安装软件包报错`externally-managed-environment`的几种解决方式

1、pip3安装软件包报错

报错externally-managed-environment的原因:
Python 3.11 开始引入了 PEP 668 规范,该规范限制了在系统级 Python 环境中使用 pip 安装第三方包,以避免与系统包管理器(如 apt)产生冲突。

如何解决呢,实际上这里也给出了4种方案:
在这里插入图片描述

2、4种解决方式

方法一:使用系统包管理器安装

你可以尝试使用 apt 来安装

sudo apt update
sudo apt install python3-xyz

方法二:创建并使用虚拟环境(推荐)

虚拟环境可以为你的项目创建一个独立的 Python 环境,避免与系统级 Python 环境产生冲突。

  • 创建虚拟环境:
python3 -m venv myenv
  • 激活虚拟环境:
source myenv/bin/activate
  • 在虚拟环境下安装软件包xyz
pip3 install xyz

关于“创建虚拟环境” 这个方式,稍微详细一点的解释见这篇:链接

方法三:使用 pipx 安装(推荐)

pipx 可以为每个 Python 应用创建独立的虚拟环境并进行管理。

  • 安装pipx
sudo apt install pipx
  • 使pipx安装的 Python 应用程序的可执行文件所在路径被正确添加到系统的环境变量 PATH 中:
pipx ensurepath
  • 使用pipx安装软件包
pipx install xyz

方法四:使用 --break-system-packages 选项(不推荐)

虽然可以通过传递 --break-system-packages 选项来绕过 PEP 668 的限制,但这种方法可能会破坏你的 Python 安装或操作系统,不建议使用。

pip3 install --break-system-packages flask

相关文章:

  • Java SE(5)——数组
  • Cesium添加WMS,WMTS,地形图图,3D Tiles数据
  • AimRT 从零到一:官方示例精讲 —— 二、HelloWorld示例.md
  • 【C++11】新的类功能、lambda
  • 存储器分类
  • 【网络】HTTP报文首部字段
  • Qt的WindowFlags窗口怎么选?
  • LeetCode 2906 统计最大元素出现至少K次的子数组(滑动窗口)
  • oracle怎样通过固化较优执行计划来优化慢sql
  • ant design pro 项目发布遇到登录页访问404
  • 【免费下载】2012-2023年全国夜间灯光数据
  • 从遍历序列构造二叉树:前序+中序与中序+后序的递归解法详解
  • JavaScript面试问题
  • tbb parallel_for 使用
  • 颜色分类,不靠“调色盘”:双指针 VS 计数排序的正面PK
  • 【Linux】服务自启动设置的方式
  • LayerSkip: Enabling Early Exit Inference and Self-Speculative Decoding
  • Java之BigDecimal
  • Silvaco仿真中victory process的蒙特卡洛(Monte Carlo)离子注入
  • 深入理解 Linux 权限管理:从基础到进阶
  • 迎接八方来客:全国多地“五一”假期党政机关大院停车场免费开放
  • 黄育奇当选福建惠安县人民政府县长
  • 三大猪企一季度同比均实现扭亏为盈,营收同比均实现增长
  • 不准打小孩:童年逆境经历视角下的生育友好社会
  • “即买即退”扩容提质,上海静安推出离境退税2.0版新政
  • 辽宁省全力开展辽阳一饭店火灾事故救援处置工作