mkvirtualenv: 符号链接层数过多

mkvirtualenv: Too many levels of symbolic links

我是 运行 virtualenv burrito 并收到错误消息,提示符号链接级别过多。我不知道那是什么意思。

mkvirtualenv --python /usr/local/bin/Python3 mantis

错误:

Running virtualenv with interpreter /usr/local/bin/Python3
Using base prefix '/Library/Frameworks/Python.framework/Versions/3.4'
New python executable in mantis/bin/Python3
Also creating executable in mantis/bin/python
Traceback (most recent call last):
  File "/Users/croberts/.venvburrito/lib/python2.7/site-packages/virtualenv.py", line 2352, in <module>
    main()
  File "/Users/croberts/.venvburrito/lib/python2.7/site-packages/virtualenv.py", line 825, in main
    symlink=options.symlink)
  File "/Users/croberts/.venvburrito/lib/python2.7/site-packages/virtualenv.py", line 985, in create_environment
    site_packages=site_packages, clear=clear, symlink=symlink))
  File "/Users/croberts/.venvburrito/lib/python2.7/site-packages/virtualenv.py", line 1439, in install_python
    raise e
  File "/Users/croberts/.venvburrito/lib/python2.7/site-packages/virtualenv.py", line 1431, in install_python
    stdout=subprocess.PIPE)
  File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/subprocess.py", line 859, in __init__
    restore_signals, start_new_session)
  File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/subprocess.py", line 1457, in _execute_child
    raise child_exception_type(errno_num, err_msg)
OSError: [Errno 62] Too many levels of symbolic links

我之前遇到过这个错误并通过 Python3.4 而不是 Python3 解决了它。现在无论我尝试使用哪个 python 它都不起作用。即使我尝试使用默认 (2.7)

文件“/Users/croberts/? 似乎您正在使用 Windows。考虑使用 'virtualenvwrapper-win'. The latest version is 1.2.0 which support python 2 up to 3.4. I've used it without any problems. If you use several versions of python on your computer, you can switch between them using 'pywin'

制作新的虚拟环境:

C:\Users\your_directory>mkvirtualenv neo
Using base prefix 'C:\Python34'
New python executable in neo\Scripts\python.exe
Installing setuptools, pip...done.

查看已有的虚拟环境:

C:\Users\your_directory>lsvirtualenv

dir /b /ad "C:\Users\your_directory"
=========================================================================
env0
env1
env2
neo

St运行gely,当我试图用一个已经存在的名字创建一个 virtualenv 时,我 运行 进入了这个。删除旧的并创建新的解决方案:

rmvirtualenv old-one
mkvirtualenv new-one

这不起作用的原因是因为我在大写 Python。一旦我使用 python3 而不是 Python3 完成它,我就不再遇到麻烦了。

我在 OSX 上遇到了同样的问题。

我在之后摆脱了它:

1. removing env folder
2. removing __pycache__ folder

我在构建最新鲜的环境后遇到了它。因为在建新的时候被自己打断了。然后我注意到 virtualenvwrapper 已经在环境目录下创建了一个新的环境文件夹,但它没有正确完成。因此,我删除了最新的环境文件夹并重新尝试安装相同的环境。已修复!

我在 raspberry pi 安装 open cv 时遇到了同样的问题。 我使用以下方法解决了我的问题。

转到/home/pi ls -all 并检查 weather.virtualenvs 是否存在 如果它在那里删除它 rm -r .virtualenvs

我正在使用 mac,我通过 rm 与您尝试创建的名称相同的虚拟环境解决了这个问题。具体来说,我 rm Users/user_name/.virtualenvs/ 中的文件夹。然后创建工作。

我不确定为什么要使用

python3 -m venv venv

而不是

virtualenv -p python3 venv

然后激活 venv 或手动设置路径,类似这样

      export PYTHONPATH=.:$PYTHONPATH
      VIRTUAL_ENV=`pwd`/venv
      export VIRTUAL_ENV
      PATH="$VIRTUAL_ENV/bin:$PATH"
      export PATH

对我有用。

我试图快速搜索 virtualenvpython3 -m venv 模块之间的差异...但没有找到任何东西。