当我以普通用户使用virtulenv时出现pip3安装错误

时间:2018-09-19 04:37:36

标签: python-3.x pip

当我尝试在虚拟环境中使用pip3命令安装软件包时,发现了以下问题。

source /bin/activate    ##activate virtualenv

pip3 install aiohttp    ##
  

错误:由于环境错误而无法安装软件包:[Errno   13]权限被拒绝:   '/home/yxs/venv/py34/lib64/python3.4/site-packages/multidict'考虑   使用--user选项或检查权限。

pip3 install --user aiohttp    
  

错误:无法执行'--user'安装。用户站点包不是   在此virtualenv中可见。

因此,我尝试了sudo pip3 install aiohttp,当我用pip3 list进行检查时,发现aiohttp已安装在系统中。比卡斯

(py34) [yxs@yxs ~]$pip3 list    ## no package named aiohttp

[yxs@yxs ~]$pip3 list    ## found aiohttp

如何将软件包安装到virtualenv中?

编辑:

操作系统是CentOS7.5,默认的Python版本是2.7,我通过 epel-realse 安装了 python3.4 安装了pip3, pip.py

我想问题是我必须使用命令sudo进行安装,但是此命令将离开virtualenv环境。就像下面的一样,但是我不知道如何解决这个问题。顺便说一下,这些操作是在tmux会话中执行的。

  

(py34)[yxs @ yxs〜] $ su-根

     

密码:

     

上次登录时间:2018年9月19日星期三12:07:23 CST pts / 2

     

[root @ yxs〜]#

总而言之,我只能使用root通过命令pip install

将软件包安装到virtualenv中

1 个答案:

答案 0 :(得分:0)

Source /bin/activate表示您正在使用unix / linux的/bin根目录。 当您使用python 3时。为什么不使用python的内置venv模块。 将.env目录添加到您的.gitignore文件中。

用法

python3 -m venv .env
source .env/bin/activate
pip install django
pip freeze > requirements.txt