解决virtualenv -p python3 venv报错的问题


Posted in Python onFebruary 05, 2021

在阿里云服务器上,用virtualenv创建虚拟环境时,报了个错误

root@iZwz982qla1uxm1s5dnyo7Z:/usr/lib/python3/dist-packages/virtualenv-15.0.1.egg-info# virtualenv -p python3 venv
Running virtualenv with interpreter /usr/bin/python2
New python executable in /usr/lib/python3/dist-packages/virtualenv-15.0.1.egg-info/venv/bin/python2
Not overwriting existing python script /usr/lib/python3/dist-packages/virtualenv-15.0.1.egg-info/venv/bin/python (you must use /usr/lib/python3/dist-packages/virtualenv-15.0.1.egg-info/venv/bin/python2)
Please make sure you remove any previous custom paths from your /root/.pydistutils.cfg file.
 1 [global]
Installing setuptools, pkg_resources, pip, wheel...
 Complete output from command /usr/lib/python3/dis...nfo/venv/bin/python2 - setuptools pkg_resources pip wheel:
 Collecting setuptools
 Downloading http://mirrors.aliyun.com/pypi/packages/ff/f4/385715ccc461885f3cedf57a41ae3c12b5fec3f35cce4c8706b1a112a133/setuptools-40.0.0-py2.py3-none-any.whl (567kB)
Collecting pkg_resources
Exception:
Traceback (most recent call last):
 File "/usr/share/python-wheels/pip-8.1.1-py2.py3-none-any.whl/pip/basecommand.py", line 209, in main
 status = self.run(options, args)
 File "/usr/share/python-wheels/pip-8.1.1-py2.py3-none-any.whl/pip/commands/install.py", line 328, in run
 wb.build(autobuilding=True)
 File "/usr/share/python-wheels/pip-8.1.1-py2.py3-none-any.whl/pip/wheel.py", line 748, in build
 self.requirement_set.prepare_files(self.finder)
 File "/usr/share/python-wheels/pip-8.1.1-py2.py3-none-any.whl/pip/req/req_set.py", line 360, in prepare_files
 ignore_dependencies=self.ignore_dependencies))
 File "/usr/share/python-wheels/pip-8.1.1-py2.py3-none-any.whl/pip/req/req_set.py", line 512, in _prepare_file
 finder, self.upgrade, require_hashes)
 File "/usr/share/python-wheels/pip-8.1.1-py2.py3-none-any.whl/pip/req/req_install.py", line 273, in populate_link
 self.link = finder.find_requirement(self, upgrade)
 File "/usr/share/python-wheels/pip-8.1.1-py2.py3-none-any.whl/pip/index.py", line 442, in find_requirement
 all_candidates = self.find_all_candidates(req.name)
 File "/usr/share/python-wheels/pip-8.1.1-py2.py3-none-any.whl/pip/index.py", line 400, in find_all_candidates
 for page in self._get_pages(url_locations, project_name):
 File "/usr/share/python-wheels/pip-8.1.1-py2.py3-none-any.whl/pip/index.py", line 545, in _get_pages
 page = self._get_page(location)
 File "/usr/share/python-wheels/pip-8.1.1-py2.py3-none-any.whl/pip/index.py", line 648, in _get_page
 return HTMLPage.get_page(link, session=self.session)
 File "/usr/share/python-wheels/pip-8.1.1-py2.py3-none-any.whl/pip/index.py", line 760, in get_page
 resp.raise_for_status()
 File "/usr/lib/python3/dist-packages/virtualenv-15.0.1.egg-info/venv/share/python-wheels/requests-2.9.1-py2.py3-none-any.whl/requests/models.py", line 840, in raise_for_status
 raise HTTPError(http_error_msg, response=self)
HTTPError: 404 Client Error: Not Found for url: http://mirrors.aliyun.com/pypi/simple/pkg-resources/
----------------------------------------
...Installing setuptools, pkg_resources, pip, wheel...done.
Traceback (most recent call last):
 File "/usr/lib/python3/dist-packages/virtualenv.py", line 2363, in <module>
 main()
 File "/usr/lib/python3/dist-packages/virtualenv.py", line 719, in main
 symlink=options.symlink)
 File "/usr/lib/python3/dist-packages/virtualenv.py", line 988, in create_environment
 download=download,
 File "/usr/lib/python3/dist-packages/virtualenv.py", line 918, in install_wheel
 call_subprocess(cmd, show_stdout=False, extra_env=env, stdin=SCRIPT)
 File "/usr/lib/python3/dist-packages/virtualenv.py", line 812, in call_subprocess
 % (cmd_desc, proc.returncode))
OSError: Command /usr/lib/python3/dis...nfo/venv/bin/python2 - setuptools pkg_resources pip wheel failed with error code 2

看到HTTPError: 404 Client Error: Not Found for url: http://mirrors.aliyun.com/pypi/simple/pkg-resources/以为是阿里云的安全组配置没配好,折腾了半天,原来是访问PyPI镜像源出了问题,将pip的默认的源地址改为国内源即可。

具体操作如下:

vim ~/.pip/pip.conf打开pip配置文件:

写入

[global]
index-url = http://e.pypi.python.org/simple

以下这几个国内源都可以

e.pypi.python.org

pypi.douban.com

pypi.hustunique.com

补充:使用virtualenv创建Python3.7虚拟环境时报错ModuleNotFoundError: No module named '_ctypes'的解决方法

使用virtualenv创建Python3.7.6版本虚拟环境时,遇到了标题中的报错,记录一下解决过程。

出现这种情况一般是因为缺少依赖包libffi-devel

在安装3.7以上版本时,需要一个新的libffi-devel包做依赖

使用yum安装依赖

yum install libffi-devel -y

删除之前安装的报错的虚拟环境目录

rm -f venv

重新编译安装系统Python3.7.6(需要先找到安装时的Python源码包,cd到目录中)

./configure --prefix=/usr/local/python3
make && make install

删除之前建立的软连接

rm -rf /usr/bin/python3
rm -rf /usr/bin/pip3

重新建立软连接

ln -s /usr/local/python3/bin/python3.7 /usr/bin/python3
ln -s /usr/local/python3/bin/pip3.7 /usr/bin/pip3

到此Python3重新安装完成,可以用python3、pip3命令测试一下是否安装成功。

进入虚拟目录将要存放的目录,使用新安装的Python3创建虚拟环境。此处需要使用-p参数指定Python版本路径,否则默认创建Python2的环境。

virtualenv -p /usr/bin/python3 venv

测试进入创建好的虚拟环境中

source venv/bin/activate

退出环境

deactivate

以上为个人经验,希望能给大家一个参考,也希望大家多多支持三水点靠木。如有错误或未考虑完全的地方,望不吝赐教。

Python 相关文章推荐
python将html转成PDF的实现代码(包含中文)
Mar 04 Python
在Python中关于中文编码问题的处理建议
Apr 08 Python
python实现ping的方法
Jul 06 Python
在Python中移动目录结构的方法
Jan 31 Python
VScode编写第一个Python程序HelloWorld步骤
Apr 06 Python
python解决js文件utf-8编码乱码问题(推荐)
May 02 Python
Jupyter notebook运行Spark+Scala教程
Apr 10 Python
python脚本第一行如何写
Aug 30 Python
python 绘制场景热力图的示例
Sep 23 Python
工程师必须了解的LRU缓存淘汰算法以及python实现过程
Oct 15 Python
Python爬虫中Selenium实现文件上传
Dec 04 Python
解析python中的jsonpath 提取器
Jan 18 Python
python如何修改文件时间属性
Feb 05 #Python
虚拟环境及venv和virtualenv的区别说明
Feb 05 #Python
Pycharm 如何一键加引号的方法步骤
Feb 05 #Python
Python tkinter之Bind(绑定事件)的使用示例
Feb 05 #Python
pycharm配置python 设置pip安装源为豆瓣源
Feb 05 #Python
在PyCharm中安装PaddlePaddle的方法
Feb 05 #Python
python实现录制全屏和选择区域录屏功能
Feb 05 #Python
You might like
用PHP制作静态网站的模板框架(二)
2006/10/09 PHP
让Nginx支持ThinkPHP的URL重写和PATHINFO的方法分享
2011/08/08 PHP
解决PhpMyAdmin中导入2M以上大文件限制的方法分享
2014/06/06 PHP
thinkphp使用phpmailer发送邮件的方法
2014/11/24 PHP
PHP简单实现模拟登陆功能示例
2017/09/15 PHP
laravel实现上传图片并在页面显示的例子
2019/10/14 PHP
Javascript string 扩展库代码
2010/04/09 Javascript
CSS和Javascript简单复习资料
2010/06/29 Javascript
关于textarea提交的内容无法换行的解决办法
2013/04/09 Javascript
js实现点小图看大图效果的思路及示例代码
2013/10/28 Javascript
javascript实现切换td中的值
2014/12/05 Javascript
jQuery创建自定义的选择器用以选择高度大于100的超链接实例
2015/03/18 Javascript
js实现简单锁屏功能实例
2015/05/27 Javascript
jQuery与JS加载事件用法分析
2016/09/04 Javascript
Asp.Net之JS生成分页条的方法
2016/11/23 Javascript
jQuery实现限制文本框的输入长度
2017/01/11 Javascript
Bootstrap Table中的多选框删除功能
2018/07/15 Javascript
LayUI switch 开关监听 获取属性值、更改状态的方法
2019/09/21 Javascript
JavaScript设计模式--桥梁模式引入操作实例分析
2020/05/23 Javascript
Vue项目配置跨域访问和代理proxy设置方式
2020/09/08 Javascript
[05:10]2014DOTA2国际邀请赛 通往胜利之匙赛场探秘之旅
2014/07/18 DOTA
[02:36]DOTA2-DPC中国联赛 正赛 PSG.LGD vs Magma 选手采访
2021/03/11 DOTA
Python中使用Beautiful Soup库的超详细教程
2015/04/30 Python
在Python的一段程序中如何使用多次事件循环详解
2017/09/07 Python
浅析Python __name__ 是什么
2020/07/07 Python
利用Python实现自动扫雷小脚本
2020/12/17 Python
澳大利亚领先的时尚内衣零售商:Bras N Things
2020/07/28 全球购物
工作中的自我评价如何写好
2013/10/28 职场文书
大学生会计职业生涯规划范文
2014/02/28 职场文书
村干部培训班主持词
2014/03/28 职场文书
汽车广告策划方案
2014/05/31 职场文书
教师求职自荐书
2014/06/14 职场文书
2015年医德医风工作总结
2015/04/02 职场文书
2016中秋晚会开幕词
2016/03/03 职场文书
人民币使用说明书
2019/04/17 职场文书
Java比较两个对象中全部属性值是否相等的方法
2021/08/07 Java/Android