运行以下内容:
virtualenv -p python3 venv
给出:
Running virtualenv with interpreter /usr/bin/python3
Using base prefix '/usr'
New python executable in /specific/a/home/cc/students/csguests/taivanbatb/venv/bin/python3
Also creating executable in /specific/a/home/cc/students/csguests/taivanbatb/venv/bin/python
Installing setuptools, pip, wheel...
这是卡住的地方。
调用CTRL-C给出:
File "/usr/local/bin/virtualenv", line 11, in <module>
sys.exit(main())
File "/usr/local/lib/python2.7/dist-packages/virtualenv.py", line 671, in main
Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/virtualenv.py", line 2328, in <module>
raise SystemExit(popen.wait())
File "/usr/lib/python2.7/subprocess.py", line 1376, in wait
pid, sts = _eintr_retry_call(os.waitpid, self.pid, 0)
File "/usr/lib/python2.7/subprocess.py", line 476, in _eintr_retry_call
return func(*args)
KeyboardInterrupt
main()
File "/usr/local/lib/python2.7/dist-packages/virtualenv.py", line 713, in main
symlink=options.symlink)
File "/usr/local/lib/python2.7/dist-packages/virtualenv.py", line 945, in create_environment
download=download,
File "/usr/local/lib/python2.7/dist-packages/virtualenv.py", line 901, in install_wheel
call_subprocess(cmd, show_stdout=False, extra_env=env, stdin=SCRIPT)
File "/usr/local/lib/python2.7/dist-packages/virtualenv.py", line 769, in call_subprocess
line = stdout.readline()
KeyboardInterrupt
与this相似。
正如链接问题所示,我尝试使用--no-wheel
进行安装,但无济于事。我确信这不是网络连接问题,因为使用virtualenv env
使用python2设置环境不会产生任何错误。
我使用的所有软件包的具体版本如下:
python 3.4.0 python 2.7.6 virtualenv 15.1.0
答案 0 :(得分:14)
1.检查您的互联网连接。
2.将python3设置为默认的python解释器,因为你有python2.7作为默认的python解释器。尝试使用没有任何轮子:
virtualenv venv --no-wheel
然后激活virtualenv并运行: -
pip install --upgrade pip
pip install setuptools --no-use-wheel --upgrade
pip install wheel --no-cache
如果您支持代理,请使用: -
sudo pip download setuptools pip wheel --proxy http://<yourproxyhere>
完成所有这些virtualenv -p python3 venv
后,我的virtualenv 完美 。
注意 :假设您的系统中已经设置了虚拟环境,而python3是您的默认解释器。
或者,您不需要
virtualenv -p python3 venv
。您可以指定要在virtualenv中使用的python解释器(存在于/ usr / bin / *文件夹中)并使用它如下: -
virtualenv --python = / usr / bin / pythonX.Y / home / username / path / to / virtualenv_name如果要安装在当前工作目录中,则可以使用: -
virtualenv --python = / usr / bin / pythonX.Y virtualenv_name
REFERENCE
答案 1 :(得分:0)
您的堆栈跟踪表明您正在使用2.7安装中的virtualenv。这表示您的PATH未设置为3.x.启动一个新的shell,设置PATH,使其上没有/usr/local/lib/python2.7,然后重试。
答案 2 :(得分:0)
virtualenv
只是一个python包。你可以在python2和python3上安装它。
根据我的经验,python3上的virtualenv很好地处理了两个python版本。你的stacktrace显示你使用virtualenv for python2 - 尝试切换到python3。
要在python3上安装它,请运行
pip3 install virtualenv
或者,如果由于某种原因必须使用apt-get,
apt-get install python3-virtualenv
答案 3 :(得分:0)
在网络连接不可用时尝试以下操作:
virtualenv --no-setuptools --no-wheel env_only_pip
输入virtualenv时您仍然可以使用pip
pip install --no-index --find-links=file:py_package -r requirements.txt