首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Ensurepip模块不存在,如何手动安装?

Ensurepip模块不存在,如何手动安装?
EN

Stack Overflow用户
提问于 2021-01-18 18:52:58
回答 1查看 2.3K关注 0票数 2

为了避免出现XY问题:我们的目标是在synology上创建一个虚拟环境,这样就没有apt-get,其中pip是手动安装的。

我试图在上面的环境中创建一个虚拟环境(synology包python3.8,手动安装pip )。

但是,这会产生以下错误:

代码语言:javascript
运行
复制
$ python3 -m venv new_venv
Error: Command '['/volume1/docker/builder/new_venv/bin/python3', '-Im', 'ensurepip', '--upgrade', '--default-pip']' returned non-zero exit status 1.

在找到该错误的链中,我发现venv运行得“很好”:

代码语言:javascript
运行
复制
$ python3 -m venv --without-pip new_venv 

按预期工作。同时,pip本身也能正常工作。然而,我不得不手动安装pip。这也导致synology版本的python没有模块ensurepip

代码语言:javascript
运行
复制
# python3 -c "import ensurepip; print(ensurepip.__file__);"
Traceback (most recent call last):
  File "<string>", line 1, in <module>
ModuleNotFoundError: No module named 'ensurepip'

这给出了一个问题:如何手动安装ensurepip和/或在不依赖ensurepip的情况下使虚拟env安装ensurepip

EN

Stack Overflow用户

发布于 2022-01-05 09:39:20

在venv虚拟环境中安装pip

下载最新的pip安装脚本并将文件命名为get-pip.py:

代码语言:javascript
运行
复制
$ curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py

使用Python3创建虚拟环境,但其中没有pip (假设您在/volume1/docker/builder/中):

代码语言:javascript
运行
复制
$ python3 -m venv --without-pip /volume1/docker/builder/new_venv

激活虚拟环境:

代码语言:javascript
运行
复制
$ source /volume1/docker/builder/new_venv/bin/activate

您的提示符现在应该包含parens中的虚拟环境名称:

代码语言:javascript
运行
复制
(new_venv) $

脚本将在激活的 venv虚拟环境中安装pip:

代码语言:javascript
运行
复制
(new_venv) $ python get-pip.py
# or
(new_venv) $ python3 get-pip.py
票数 1
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65780452

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档