pip install報(bào)錯(cuò)This environment is externally managed的解決方法
1. 問題描述
在按照 ms-agent 教程安裝 ms-agent 時(shí),運(yùn)行下述命令后報(bào)錯(cuò)
cd ms-agent pip3 install -e . # 該安裝命令解釋: # pip install:使用 pip 安裝 Python 包。 # -e:表示 “editable”(可編輯)模式。也稱為“開發(fā)模式”(development mode)。 # .:代表當(dāng)前目錄(即你運(yùn)行命令時(shí)所在的目錄)。
報(bào)錯(cuò)內(nèi)容如下:
error: externally-managed-environment
× This environment is externally managed
╰─> To install Python packages system-wide, try brew install
xyz, where xyz is the package you are trying to
install.
If you wish to install a Python library that isn't in Homebrew,
use a virtual environment:
python3 -m venv path/to/venv
source path/to/venv/bin/activate
python3 -m pip install xyz
If you wish to install a Python application that isn't in Homebrew,
it may be easiest to use 'pipx install xyz', which will manage a
virtual environment for you. You can install pipx with
brew install pipx
You may restore the old behavior of pip by passing
the '--break-system-packages' flag to pip, or by adding
'break-system-packages = true' to your pip.conf file. The latter
will permanently disable this error.
If you disable this error, we STRONGLY recommend that you additionally
pass the '--user' flag to pip, or set 'user = true' in your pip.conf
file. Failure to do this can result in a broken Homebrew installation.
Read more about this behavior here: <https://peps.python.org/pep-0668/>
note: If you believe this is a mistake, please contact your Python installation or OS distribution provider. You can override this, at the risk of breaking your Python installation or OS, by passing --break-system-packages.
hint: See PEP 668 for the detailed specification.
2.報(bào)錯(cuò)分析
這是 PEP 668 的限制:現(xiàn)在用的 python3/pip3 是來自 Homebrew,它把系統(tǒng) Python 環(huán)境標(biāo)記為“externally managed”,禁止用 pip install 往這個(gè)全局環(huán)境里裝包(避免把 Homebrew 的 Python 環(huán)境弄壞)。
最推薦的解決方式是:用虛擬環(huán)境 來安裝(尤其這里是 pip install -e .,更應(yīng)該用 venv)。
3. 創(chuàng)建虛擬環(huán)境再安裝
3.1 在項(xiàng)目里建 venv 再install
# 進(jìn)入項(xiàng)目 cd ms-agent # 1) 創(chuàng)建虛擬環(huán)境 python3 -m venv .venv # 2) 激活虛擬環(huán)境 source .venv/bin/activate # 3) 升級 venv 里的 pip(可選但建議) python -m pip install -U pip # 4) editable 安裝 python -m pip install -e .
在項(xiàng)目的 .venv 目錄里,可以看到新創(chuàng)建的虛擬環(huán)境信息:

3.2 驗(yàn)證venv是否成功
# 進(jìn)入項(xiàng)目 cd ms-agent # 激活虛擬環(huán)境 source .venv/bin/activate # 查看虛擬環(huán)境的python位置 which python # 查看虛擬環(huán)境里的 pip 版本 python -m pip -V # 輸出里應(yīng)包含 .../ms-agent/.venv/...,而不是系統(tǒng)環(huán)境 /opt/homebrew/...

3.3 每次打開終端先激活虛擬環(huán)境
# 進(jìn)入項(xiàng)目 cd ms-agent # 激活虛擬環(huán)境 source .venv/bin/activate
到此這篇關(guān)于pip install報(bào)錯(cuò)This environment is externally managed的解決方法的文章就介紹到這了,更多相關(guān)pip install報(bào)錯(cuò)解決內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- pip install -r requirements.txt時(shí)遇到報(bào)錯(cuò)自動跳過
- 解決pip安裝報(bào)錯(cuò)required?to?install?pyproject.toml-based?projects問題
- python?pip?install總是報(bào)錯(cuò)情況分析及解決辦法
- Python使用Websocket推送數(shù)據(jù)實(shí)例
- 解決python?pip安裝第三方模塊報(bào)錯(cuò):error:legacy-install-failure
- 解決pip?install?dlib報(bào)錯(cuò)C++11?is?required?to?use?dlib
- 解決pip install xxx報(bào)錯(cuò)SyntaxError: invalid syntax的問題
- 解決pip install的時(shí)候報(bào)錯(cuò)timed out的問題
相關(guān)文章
python-redis-lock實(shí)現(xiàn)鎖自動續(xù)期的源碼邏輯
這篇文章主要介紹了python-redis-lock實(shí)現(xiàn)鎖自動續(xù)期的源碼邏輯,其中用到了多線程threading、弱引用weakref和Lua腳本等相關(guān)知識,需要的朋友可以參考下2024-07-07
VScode連接遠(yuǎn)程服務(wù)器上的jupyter notebook的實(shí)現(xiàn)
這篇文章主要介紹了VScode連接遠(yuǎn)程服務(wù)器上的jupyter notebook的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-04-04
python代碼實(shí)現(xiàn)煙花實(shí)例
這篇文章主要給大家分享了python煙花詳細(xì)的代碼,文章主要以python煙花的代碼展開全文,所以解說會比較少,代碼較多。喜歡的小伙伴可以參考一下,希望對你有所幫助2021-12-12

