Joa*_*m W 5 python debian pipx
Debain stable 希望我使用 pipx 安装 Python 模块。所以我这样做
$ pipx install auditwheel
$ pipx ensurepath
$ python3 -m pipx ensurepath
$ python3
Python 3.11.2 (main, Mar 13 2023, 12:18:29) [GCC 12.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import auditwheel
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'auditwheel'
>>>
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?
从Python 3.11开始,Debian鼓励用户创建单独的Python虚拟环境来安装Python包。
因为 Debian 声明其 Python 安装是外部管理的,pip(和其他安装程序)将拒绝在系统范围内安装软件包。只能在虚拟环境或单独的 Python 安装中进行安装。这是因为 Python 包安装程序(例如pip)不知道 APT 管理的包对库和版本的限制。有关多个安装程序在同一 Python 安装上运行时可能出现的问题的完整讨论,请参阅PEP-668 。
因此,最佳方法是创建一个虚拟环境,例如MyEnv,并在其中安装软件包:
$ mkdir -p $HOME/.venvs # create a folder for all virtual environments
$ python3 -m venv $HOME/.venvs/MyEnv # create MyEnv
Run Code Online (Sandbox Code Playgroud)
这将创建一个$HOME/.venvs/MyEnv包含配置文件的目录pyvenv.cfg,其中包含该虚拟环境的一些详细信息,例如 Python 可执行文件和 Python 版本。
验证虚拟环境中Python的版本:
$HOME/.venvs/MyEnv/bin/python --version
Run Code Online (Sandbox Code Playgroud)
创建的虚拟环境的可执行文件位于$HOME/.venvs/MyEnv/bin.
要将软件包安装到虚拟环境中,请使用
$HOME/.venvs/MyEnv/bin/python -m pip install <some-package>
Run Code Online (Sandbox Code Playgroud)
要“激活”虚拟环境,即将其配置变量添加到 shell 环境中,请使用
source $HOME/.venvs/MyEnv/bin/activate
Run Code Online (Sandbox Code Playgroud)
请参阅https://packaging.python.org/en/latest/guides/installing-using-pip-and-virtual-environmentsvirtualenv上pip的Python 指南。
| 归档时间: |
|
| 查看次数: |
4843 次 |
| 最近记录: |