[英]'Permission denied' error when using pip install in virtualenv
Edit: FIXED! 编辑:固定!
Just had to chown the .cache directory 只需要输入.cache目录
I've tried the virtualenvwrapper docs instructions, I've tried this guy's instructions as well as these ...I've tried sudo pip uninstall virtualenv
, sudo pip uninstall virtualenvwrapper
, sudo pip3 uninstall virtualenv
, sudo pip3 uninstall virtualenvwrapper
before attempting each set of instructions. 我已经尝试了virtualenvwrapper文档说明,我已经尝试过这个家伙的说明以及这些 ...我已经尝试了
sudo pip uninstall virtualenv
, sudo pip uninstall virtualenvwrapper
, sudo pip3 uninstall virtualenv
, sudo pip3 uninstall virtualenvwrapper
在尝试每套之前指示。 I've looked at other SO posts like this one , but the sudo issue isn't the same as my own. 我看过像这样的其他SO帖子,但是sudo问题与我自己的不一样。 By this, I mean that I don't use sudo when making the virtualenv, and if I try to use sudo to pip install a package, it'll just say that I've already installed the package (outside of the virtualenv).
通过这个,我的意思是我在制作virtualenv时不使用sudo,如果我尝试使用sudo pip安装包,它只会说我已经安装了包(在virtualenv之外)。
I've also tried doing pip install --user virtualenv(wrapper)
我也尝试过
pip install --user virtualenv(wrapper)
Here's what I did: 这是我做的:
~ $ sudo pip3 install virtualenv
Downloading/unpacking virtualenv
Downloading virtualenv-13.0.3-py2.py3-none-any.whl (1.7MB): 1.7MB downloaded
Installing collected packages: virtualenv
Successfully installed virtualenv
Cleaning up...
~ $ mkdir ~/.virtualenvs
~ $ sudo pip3 install virtualenvwrapper
Downloading/unpacking virtualenvwrapper
Downloading virtualenvwrapper-4.5.1-py2.py3-none-any.whl
Requirement already satisfied (use --upgrade to upgrade): virtualenv-clone in /usr/local/lib/python3.4/dist-packages (from virtualenvwrapper)
Requirement already satisfied (use --upgrade to upgrade): stevedore in /usr/local/lib/python3.4/dist-packages (from virtualenvwrapper)
Requirement already satisfied (use --upgrade to upgrade): virtualenv in /usr/local/lib/python3.4/dist-packages (from virtualenvwrapper)
Installing collected packages: virtualenvwrapper
Successfully installed virtualenvwrapper
Cleaning up...
~ $ export WORKON_HOME=~/.virtualenvs/
Then I added these two lines to my .bashrc: (I also tried setting VIRTUALENVWRAPPER_PYTHON
to /usr/bin/python
) 然后我将这两行添加到我的.bashrc中:(我也尝试将
VIRTUALENVWRAPPER_PYTHON
设置为/usr/bin/python
)
source /usr/local/bin/virtualenvwrapper.sh
VIRTUALENVWRAPPER_PYTHON='/usr/bin/python3'
Next I tried this: 接下来我尝试了这个:
~ $ mkvirtualenv test
New python executable in test/bin/python
Installing setuptools, pip, wheel...done.
(test)~ $ pip install numpy
Collecting numpy
Using cached numpy-1.9.2.tar.gz
Building wheels for collected packages: numpy
Exception:
Traceback (most recent call last):
File "/home/aweeeezy/.virtualenvs/test/local/lib/python2.7/site-packages/pip/basecommand.py", line 223, in main
status = self.run(options, args)
File "/home/aweeeezy/.virtualenvs/test/local/lib/python2.7/site-packages/pip/commands/install.py", line 291, in run
wb.build(autobuilding=True)
File "/home/aweeeezy/.virtualenvs/test/local/lib/python2.7/site-packages/pip/wheel.py", line 754, in build
ensure_dir(output_dir)
File "/home/aweeeezy/.virtualenvs/test/local/lib/python2.7/site-packages/pip/utils/__init__.py", line 70, in ensure_dir
os.makedirs(path)
File "/home/aweeeezy/.virtualenvs/test/lib/python2.7/os.py", line 150, in makedirs
makedirs(head, mode)
File "/home/aweeeezy/.virtualenvs/test/lib/python2.7/os.py", line 150, in makedirs
makedirs(head, mode)
File "/home/aweeeezy/.virtualenvs/test/lib/python2.7/os.py", line 150, in makedirs
makedirs(head, mode)
File "/home/aweeeezy/.virtualenvs/test/lib/python2.7/os.py", line 157, in makedirs
mkdir(name, mode)
OSError: [Errno 13] Permission denied: '/home/aweeeezy/.cache/pip/wheels/4b'
Why can't virtualenv just work? 为什么virtualenv不能正常工作?
I think that if you do that pip install numpy --no-cache-dir
it will work. 我认为如果你这样做
pip install numpy --no-cache-dir
它会起作用。
If you run pip --help
you will find: 如果你运行
pip --help
你会发现:
--no-cache-dir Disable the cache.
Hope that it can help to someone in the future. 希望它能在将来帮助某人。
you need to change the owner of directory of pip. 你需要更改pip目录的所有者。
run chown -R <user>:<group> /home/aweeeezy/.cache/pip
. run
chown -R <user>:<group> /home/aweeeezy/.cache/pip
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.